Function at 0x401570
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x80
mov esi, esp
mov dword [esi + 0x14], ecx
mov eax, dword [ebp + 8]
mov dword [esi + 0x18], eax
mov eax, dword [0x43e080]
xor eax, ebp
mov dword [esi + 0x78], eax
mov ecx, dword [0x43f5e4]
mov eax, dword [0x43f5e0]
mov edx, ecx
add edx, 0xd354b652
sub edx, 1
sub edx, 0xd354b652
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0x22], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0x23], al
mov dword [esi + 0x1c], 0x5b0b3a81
mov eax, dword [esi + 0x1c]
mov dword [esi + 0x10], eax
sub eax, 0x8b62bbd3
je 0x4023c9
jmp 0x4015ea
mov eax, dword [esi + 0x10]
sub eax, 0x8e3e4539
je 0x401f9f
jmp 0x4015fd
mov eax, dword [esi + 0x10]
sub eax, 0x909a698e
je 0x402265
jmp 0x401610
mov eax, dword [esi + 0x10]
sub eax, 0x9274122f
je 0x401aa5
jmp 0x401623
mov eax, dword [esi + 0x10]
sub eax, 0x9df83f1f
je 0x401e37
jmp 0x401636
mov eax, dword [esi + 0x10]
sub eax, 0x9eaa54c2
je 0x402335
jmp 0x401649
mov eax, dword [esi + 0x10]
sub eax, 0xa05e7b7a
je 0x401a57
jmp 0x40165c
mov eax, dword [esi + 0x10]
sub eax, 0xaca99be7
je 0x40217b
jmp 0x40166f
mov eax, dword [esi + 0x10]
sub eax, 0xae48b67e
je 0x4023e9
jmp 0x401682
mov eax, dword [esi + 0x10]
sub eax, 0xb1ff38b0
je 0x401f93
jmp 0x401695
mov eax, dword [esi + 0x10]
sub eax, 0xc9fb7ce9
je 0x4024e6
jmp 0x4016a8
mov eax, dword [esi + 0x10]
sub eax, 0xcdcc53f0
je 0x401cc5
jmp 0x4016bb
mov eax, dword [esi + 0x10]
sub eax, 0xcf52c967
je 0x40252f
jmp 0x4016ce
mov eax, dword [esi + 0x10]
sub eax, 0xd49c20ea
je 0x401a4b
jmp 0x4016e1
mov eax, dword [esi + 0x10]
sub eax, 0xd920af52
je 0x401d06
jmp 0x4016f4
mov eax, dword [esi + 0x10]
sub eax, 0xdb2a6af9
je 0x401d12
jmp 0x401707
mov eax, dword [esi + 0x10]
sub eax, 0xe158d1ca
je 0x4020ba
jmp 0x40171a
mov eax, dword [esi + 0x10]
sub eax, 0xe48d9932
je 0x40227d
jmp 0x40172d
mov eax, dword [esi + 0x10]
sub eax, 0xe700eaac
je 0x401e77
jmp 0x401740
mov eax, dword [esi + 0x10]
sub eax, 0xec57a7b7
je 0x401d45
jmp 0x401753
mov eax, dword [esi + 0x10]
sub eax, 0xeccb0e5f
je 0x4024bf
jmp 0x401766
mov eax, dword [esi + 0x10]
sub eax, 0xf0fd8c8e
je 0x401c25
jmp 0x401779
mov eax, dword [esi + 0x10]
sub eax, 0xf5236b5b
je 0x401fb3
jmp 0x40178c
mov eax, dword [esi + 0x10]
sub eax, 0x6d3e56
je 0x402108
jmp 0x40179f
mov eax, dword [esi + 0x10]
sub eax, 0xfc3e4a
je 0x40209f
jmp 0x4017b2
mov eax, dword [esi + 0x10]
sub eax, 0x1b8a136
je 0x402187
jmp 0x4017c5
mov eax, dword [esi + 0x10]
sub eax, 0x6c780d2
je 0x4022c3
jmp 0x4017d8
mov eax, dword [esi + 0x10]
sub eax, 0xf8877eb
je 0x401c77
jmp 0x4017eb
mov eax, dword [esi + 0x10]
sub eax, 0x197b3a79
je 0x401ebd
jmp 0x4017fe
mov eax, dword [esi + 0x10]
sub eax, 0x1d830950
je 0x401e2b
jmp 0x401811
mov eax, dword [esi + 0x10]
sub eax, 0x32a22793
je 0x40249c
jmp 0x401824
mov eax, dword [esi + 0x10]
sub eax, 0x34c4e57e
je 0x402026
jmp 0x401837
mov eax, dword [esi + 0x10]
sub eax, 0x36983585
je 0x4019f1
jmp 0x40184a
mov eax, dword [esi + 0x10]
sub eax, 0x379a3cb4
je 0x4024cb
jmp 0x40185d
mov eax, dword [esi + 0x10]
sub eax, 0x3a282d77
je 0x402271
jmp 0x401870
mov eax, dword [esi + 0x10]
sub eax, 0x3afaa58c
je 0x401c31
jmp 0x401883
mov eax, dword [esi + 0x10]
sub eax, 0x3ee9f9eb
je 0x401ceb
jmp 0x401896
mov eax, dword [esi + 0x10]
sub eax, 0x500b9878
je 0x4023dd
jmp 0x4018a9
mov eax, dword [esi + 0x10]
sub eax, 0x54ef644b
je 0x4021fa
jmp 0x4018bc
mov eax, dword [esi + 0x10]
sub eax, 0x555909c4
je 0x401cd1
jmp 0x4018cf
mov eax, dword [esi + 0x10]
sub eax, 0x5b0b3a81
je 0x4019cb
jmp 0x4018e2
mov eax, dword [esi + 0x10]
sub eax, 0x5b5a3d7c
je 0x401d26
jmp 0x4018f5
mov eax, dword [esi + 0x10]
sub eax, 0x5cc5aa3e
je 0x4024ab
jmp 0x401908
mov eax, dword [esi + 0x10]
sub eax, 0x602aa39f
je 0x401e57
jmp 0x40191b
mov eax, dword [esi + 0x10]
sub eax, 0x6524fcca
je 0x401af3
jmp 0x40192e
mov eax, dword [esi + 0x10]
sub eax, 0x6756cfae
je 0x401f45
jmp 0x401941
mov eax, dword [esi + 0x10]
sub eax, 0x68e7cc42
je 0x402259
jmp 0x401954
mov eax, dword [esi + 0x10]
sub eax, 0x6e613014
je 0x402329
jmp 0x401967
mov eax, dword [esi + 0x10]
sub eax, 0x6ee230ca
je 0x401db0
jmp 0x40197a
mov eax, dword [esi + 0x10]
sub eax, 0x75bbb476
je 0x402383
jmp 0x40198d
mov eax, dword [esi + 0x10]
sub eax, 0x75d45448
je 0x401ed2
jmp 0x4019a0
mov eax, dword [esi + 0x10]
sub eax, 0x7a4e1c15
je 0x40250b
jmp 0x4019b3
mov eax, dword [esi + 0x10]
sub eax, 0x7b80ef72
je 0x4024da
jmp 0x4019c6
jmp 0x402536
mov al, byte [esi + 0x22]
mov cl, byte [esi + 0x23]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x500b9878
mov ecx, 0x36983585
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
push eax
mov eax, esp
mov dword [esi + 0x24], eax
push eax
mov eax, esp
mov dword [esi + 0x28], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x2c], eax
mov eax, dword [0x43f5e4]
mov ecx, dword [0x43f5e0]
xor edi, edi
sub edi, 1
mov edx, eax
add edx, edi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x500b9878
mov ecx, 0xd49c20ea
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov dword [esi + 0x1c], 0xa05e7b7a
jmp 0x402536
push eax
mov eax, esp
mov dword [esi + 0x30], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x34], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x38], eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x3c], eax
push eax
mov eax, esp
mov dword [esi + 0x40], eax
push eax
mov eax, esp
mov dword [esi + 0x44], eax
push eax
mov eax, esp
mov dword [esi + 0x48], eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x4c], eax
mov dword [esi + 0x1c], 0x9274122f
jmp 0x402536
mov eax, dword [0x43f5e4]
mov ecx, dword [0x43f5e0]
mov edx, eax
add edx, 0xad8a496c
sub edx, 1
sub edx, 0xad8a496c
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xae48b67e
mov ecx, 0x6524fcca
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov ecx, dword [esi + 0x14]
mov edx, dword [esi + 0x18]
push eax
mov eax, esp
mov dword [esi + 0xc], eax
push eax
mov eax, esp
mov dword [esi + 0x50], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x54], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x58], eax
push eax
mov eax, esp
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 0x24]
mov dword [eax], edx
mov eax, dword [esi + 0x28]
mov dword [eax], ecx
mov eax, dword [esi + 0x28]
mov ecx, dword [esi + 0x2c]
lea eax, str.rkipkzcbtsqaglyzijrbokgbcnxryithucvhoapwncpba
sub esp, 4
mov dword [esp], eax
call fcn.0041cef0
mov eax, dword [esi + 0x30]
mov dword [eax], 0x19d1
mov ecx, dword [esi + 0x34]
lea eax, str.rxupctiwnekratltqpiwurqptjgrssdmrbctbtqerbfqldshyjmrtmjnkveydsz
sub esp, 4
mov dword [esp], eax
call fcn.0041cef0
mov ecx, dword [esi + 0x38]
lea eax, str.zogjoxvppuaegoovizgvekifaomwnadepwhdtmorqqehlscbgpkhx
sub esp, 4
mov dword [esp], eax
call fcn.0041cef0
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0x3c]
vmovsd xmm0, qword [0x4361a8]
vmovsd qword [ecx], xmm0
mov ecx, dword [esi + 0x40]
mov dword [ecx], 0x1d7
mov ecx, dword [esi + 0x44]
mov byte [ecx], 0
mov ecx, dword [esi + 0x48]
mov dword [ecx], 0x885
mov ecx, dword [esi + 0x4c]
vmovsd xmm0, qword [0x4361a0]
vmovsd qword [ecx], xmm0
mov byte [eax], 0
mov eax, dword [esi + 0x50]
mov dword [eax], 0x4f
mov ecx, dword [0x43f5e4]
mov eax, dword [0x43f5e0]
mov edx, ecx
sub edx, 0x6afb2578
sub edx, 1
add edx, 0x6afb2578
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xae48b67e
mov ecx, 0xf0fd8c8e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov dword [esi + 0x1c], 0x3afaa58c
jmp 0x402536
mov eax, dword [0x43f5e4]
mov ecx, dword [0x43f5e0]
xor edi, edi
sub edi, 1
mov edx, eax
add edx, edi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x32a22793
mov ecx, 0xf8877eb
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov eax, dword [esi + 0x50]
mov eax, dword [eax]
mov dword [esi + 0x60], eax
mov eax, dword [0x43f5e4]
mov ecx, dword [0x43f5e0]
xor edi, edi
sub edi, 1
mov edx, eax
add edx, edi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x32a22793
mov ecx, 0xcdcc53f0
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov dword [esi + 0x1c], 0x555909c4
jmp 0x402536
mov eax, dword [esi + 0x60]
cmp eax, 0
setg al
and al, 1
mov byte [esi + 0x67], al
mov dword [esi + 0x1c], 0x3ee9f9eb
jmp 0x402536
mov dl, byte [esi + 0x67]
mov eax, 0x9df83f1f
mov ecx, 0xd920af52
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov dword [esi + 0x1c], 0xdb2a6af9
jmp 0x402536
mov eax, dword [esi + 0x50]
mov eax, dword [eax]
mov dword [esi + 0x68], eax
mov dword [esi + 0x1c], 0x5b5a3d7c
jmp 0x402536
mov eax, dword [esi + 0x68]
sub eax, 0x8c791658
add eax, 0xffffffff
add eax, 0x8c791658
mov dword [esi + 0x6c], eax
mov dword [esi + 0x1c], 0xec57a7b7
jmp 0x402536
mov ecx, dword [0x43f5e4]
mov eax, dword [0x43f5e0]
xor edi, edi
sub edi, 1
mov edx, ecx
add edx, edi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x5cc5aa3e
mov ecx, 0x6ee230ca
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov eax, dword [esi + 0x50]
mov ecx, dword [esi + 0x6c]
mov dword [eax], ecx
mov ecx, dword [0x43f5e4]
mov eax, dword [0x43f5e0]
mov edx, ecx
add edx, 0x469d09b1
sub edx, 1
sub edx, 0x469d09b1
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x5cc5aa3e
mov ecx, 0x1d830950
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov dword [esi + 0x1c], 0x3afaa58c
jmp 0x402536
mov ecx, dword [esi + 0x54]
lea eax, str.rkipkzcbtsqaglyzijrbokgbcnxryithucvhoapwncpba
sub esp, 4
mov dword [esp], eax
call fcn.0041cef0
mov dword [esi + 0x1c], 0x602aa39f
jmp 0x402536
mov ecx, dword [esi + 0x58]
lea eax, str.rkipkzcbtsqaglyzijrbokgbcnxryithucvhoapwncpba
sub esp, 4
mov dword [esp], eax
call fcn.0041cef0
mov dword [esi + 0x1c], 0xe700eaac
jmp 0x402536
mov eax, dword [esi + 0x54]
mov ecx, dword [esi + 0x58]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0041d110
add esp, 8
mov byte [esi + 0xb], al
mov ecx, dword [esi + 0x58]
call fcn.0041d0a0
mov ecx, dword [esi + 0x54]
call fcn.0041d0a0
mov dl, byte [esi + 0xb]
mov eax, 0xe48d9932
mov ecx, 0x197b3a79
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov eax, dword [esi + 0x5c]
mov dword [eax], 0x10
mov dword [esi + 0x1c], 0x75d45448
jmp 0x402536
mov ecx, dword [0x43f5e4]
mov eax, dword [0x43f5e0]
mov edx, ecx
add edx, 0x98d7909c
sub edx, 1
sub edx, 0x98d7909c
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xeccb0e5f
mov ecx, 0x6756cfae
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov eax, dword [0x43f5e4]
mov ecx, dword [0x43f5e0]
mov edx, eax
sub edx, 0x8a94a693
sub edx, 1
add edx, 0x8a94a693
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xeccb0e5f
mov ecx, 0xb1ff38b0
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov dword [esi + 0x1c], 0x8e3e4539
jmp 0x402536
mov eax, dword [esi + 0x5c]
mov eax, dword [eax]
mov dword [esi + 0x70], eax
mov dword [esi + 0x1c], 0xf5236b5b
jmp 0x402536
mov ecx, dword [0x43f5e4]
mov eax, dword [0x43f5e0]
mov edx, ecx
add edx, 0x2f5437c2
sub edx, 1
sub edx, 0x2f5437c2
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x379a3cb4
mov ecx, 0x34c4e57e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov eax, dword [esi + 0x70]
cmp eax, 0
setg al
and al, 1
mov byte [esi + 0x77], al
mov ecx, dword [0x43f5e4]
mov eax, dword [0x43f5e0]
xor edi, edi
sub edi, 1
mov edx, ecx
add edx, edi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x379a3cb4
mov ecx, 0xfc3e4a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov dl, byte [esi + 0x77]
mov eax, 0x3a282d77
mov ecx, 0xe158d1ca
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov eax, dword [0x43f5e4]
mov ecx, dword [0x43f5e0]
mov edx, eax
sub edx, 0xf223ae77
sub edx, 1
add edx, 0xf223ae77
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x7b80ef72
mov ecx, 0x6d3e56
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov ecx, dword [0x43f5e4]
mov eax, dword [0x43f5e0]
mov edx, ecx
add edx, 0x74d5c33f
sub edx, 1
sub edx, 0x74d5c33f
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x7b80ef72
mov ecx, 0xaca99be7
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov dword [esi + 0x1c], 0x1b8a136
jmp 0x402536
mov ecx, dword [0x43f5e4]
mov eax, dword [0x43f5e0]
mov edx, ecx
sub edx, 0x7657d356
sub edx, 1
add edx, 0x7657d356
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xc9fb7ce9
mov ecx, 0x54ef644b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov eax, dword [esi + 0x5c]
mov ecx, dword [eax]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 0xffffffff
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [esi + 0x5c]
mov dword [eax], ecx
mov eax, dword [0x43f5e4]
mov ecx, dword [0x43f5e0]
xor edi, edi
sub edi, 1
mov edx, eax
add edx, edi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xc9fb7ce9
mov ecx, 0x68e7cc42
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov dword [esi + 0x1c], 0x909a698e
jmp 0x402536
mov dword [esi + 0x1c], 0x8e3e4539
jmp 0x402536
mov dword [esi + 0x1c], 0xe48d9932
jmp 0x402536
mov eax, dword [0x43f5e4]
mov ecx, dword [0x43f5e0]
xor edi, edi
sub edi, 1
mov edx, eax
add edx, edi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x7a4e1c15
mov ecx, 0x6c780d2
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov ecx, dword [esi + 0x38]
call fcn.0041d0a0
mov ecx, dword [esi + 0x34]
call fcn.0041d0a0
mov ecx, dword [esi + 0x2c]
call fcn.0041d0a0
mov eax, dword [0x43f5e4]
mov ecx, dword [0x43f5e0]
mov edx, eax
add edx, 0x221a4e59
sub edx, 1
sub edx, 0x221a4e59
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x7a4e1c15
mov ecx, 0x6e613014
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov dword [esi + 0x1c], 0x9eaa54c2
jmp 0x402536
mov eax, dword [0x43f5e4]
mov ecx, dword [0x43f5e0]
mov edx, eax
add edx, 0xa4f766c2
sub edx, 1
sub edx, 0xa4f766c2
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xcf52c967
mov ecx, 0x75bbb476
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov eax, dword [0x43f5e4]
mov ecx, dword [0x43f5e0]
xor edi, edi
sub edi, 1
mov edx, eax
add edx, edi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xcf52c967
mov ecx, 0x8b62bbd3
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x402536
mov ecx, dword [esi + 0x78]
xor ecx, ebp
call fcn.004271b0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov dword [esi + 0x1c], 0x36983585
jmp 0x402536
mov ecx, dword [esi + 0x14]
mov edx, dword [esi + 0x18]
push eax
mov eax, esp
mov dword [esi], eax
push eax
mov eax, esp
mov dword [esi + 4], eax
mov eax, dword [esi + 0x24]
mov dword [eax], edx
mov eax, dword [esi + 0x28]
mov dword [eax], ecx
mov eax, dword [esi + 0x28]
mov ecx, dword [esi + 0x2c]
lea eax, str.rkipkzcbtsqaglyzijrbokgbcnxryithucvhoapwncpba
sub esp, 4
mov dword [esp], eax
call fcn.0041cef0
mov eax, dword [esi + 0x30]
mov dword [eax], 0x19d1
mov ecx, dword [esi + 0x34]
lea eax, str.rxupctiwnekratltqpiwurqptjgrssdmrbctbtqerbfqldshyjmrtmjnkveydsz
sub esp, 4
mov dword [esp], eax
call fcn.0041cef0
mov ecx, dword [esi + 0x38]
lea eax, str.zogjoxvppuaegoovizgvekifaomwnadepwhdtmorqqehlscbgpkhx
sub esp, 4
mov dword [esp], eax
call fcn.0041cef0
mov ecx, dword [esi]
mov eax, dword [esi + 4]
mov edx, dword [esi + 0x3c]
vmovsd xmm0, qword [0x4361a8]
vmovsd qword [edx], xmm0
mov edx, dword [esi + 0x40]
mov dword [edx], 0x1d7
mov edx, dword [esi + 0x44]
mov byte [edx], 0
mov edx, dword [esi + 0x48]
mov dword [edx], 0x885
mov edx, dword [esi + 0x4c]
vmovsd xmm0, qword [0x4361a0]
vmovsd qword [edx], xmm0
mov byte [ecx], 0
mov dword [eax], 0x4f
mov dword [esi + 0x1c], 0x6524fcca
jmp 0x402536
mov eax, dword [esi + 0x50]
mov dword [esi + 0x1c], 0xf8877eb
jmp 0x402536
mov eax, dword [esi + 0x50]
mov ecx, dword [esi + 0x6c]
mov dword [eax], ecx
mov dword [esi + 0x1c], 0x6ee230ca
jmp 0x402536
mov dword [esi + 0x1c], 0x6756cfae
jmp 0x402536
mov eax, dword [esi + 0x70]
mov dword [esi + 0x1c], 0x34c4e57e
jmp 0x402536
mov dword [esi + 0x1c], 0x6d3e56
jmp 0x402536
mov eax, dword [esi + 0x5c]
mov ecx, dword [eax]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 0xffffffff
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [esi + 0x5c]
mov dword [eax], ecx
mov dword [esi + 0x1c], 0x54ef644b
jmp 0x402536
mov ecx, dword [esi + 0x38]
call fcn.0041d0a0
mov ecx, dword [esi + 0x34]
call fcn.0041d0a0
mov ecx, dword [esi + 0x2c]
call fcn.0041d0a0
mov dword [esi + 0x1c], 0x6c780d2
jmp 0x402536
mov dword [esi + 0x1c], 0x75bbb476
jmp 0x4015d4