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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xc8
mov esi, esp
mov dword [esi + 0x14], ecx
vmovsd xmm0, qword [ebp + 0x10]
vmovsd qword [esi + 0x18], xmm0
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x24], eax
mov eax, dword [ebp + 8]
mov dword [esi + 0x28], eax
mov eax, dword [0x4e1080]
xor eax, ebp
mov dword [esi + 0xc0], eax
mov dword [esi + 0x2c], 0x437d6c21
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x10], eax
sub eax, 0x817f9431
je 0x40409c
jmp 0x403244
mov eax, dword [esi + 0x10]
sub eax, 0x84880cc3
je 0x404208
jmp 0x403257
mov eax, dword [esi + 0x10]
sub eax, 0x8e394e8d
je 0x403f88
jmp 0x40326a
mov eax, dword [esi + 0x10]
sub eax, 0x95997807
je 0x403994
jmp 0x40327d
mov eax, dword [esi + 0x10]
sub eax, 0x96157418
je 0x403e45
jmp 0x403290
mov eax, dword [esi + 0x10]
sub eax, 0x9b8aebdc
je 0x4040b3
jmp 0x4032a3
mov eax, dword [esi + 0x10]
sub eax, 0x9d71f441
je 0x40389b
jmp 0x4032b6
mov eax, dword [esi + 0x10]
sub eax, 0xa07a1ad2
je 0x4041b9
jmp 0x4032c9
mov eax, dword [esi + 0x10]
sub eax, 0xa167960d
je 0x403921
jmp 0x4032dc
mov eax, dword [esi + 0x10]
sub eax, 0xa5bba157
je 0x403adb
jmp 0x4032ef
mov eax, dword [esi + 0x10]
sub eax, 0xa98a82fb
je 0x403b4e
jmp 0x403302
mov eax, dword [esi + 0x10]
sub eax, 0xabdae6b8
je 0x403fb8
jmp 0x403315
mov eax, dword [esi + 0x10]
sub eax, 0xac9ec177
je 0x40401d
jmp 0x403328
mov eax, dword [esi + 0x10]
sub eax, 0xaeba6d9b
je 0x403dba
jmp 0x40333b
mov eax, dword [esi + 0x10]
sub eax, 0xb0e2eff5
je 0x4039e6
jmp 0x40334e
mov eax, dword [esi + 0x10]
sub eax, 0xb8123167
je 0x403d9d
jmp 0x403361
mov eax, dword [esi + 0x10]
sub eax, 0xb86e0ce1
je 0x4040e1
jmp 0x403374
mov eax, dword [esi + 0x10]
sub eax, 0xb961af4b
je 0x404150
jmp 0x403387
mov eax, dword [esi + 0x10]
sub eax, 0xba6a649b
je 0x403c9b
jmp 0x40339a
mov eax, dword [esi + 0x10]
sub eax, 0xbc9ac43e
je 0x403bc2
jmp 0x4033ad
mov eax, dword [esi + 0x10]
sub eax, 0xbeae8f9b
je 0x403f53
jmp 0x4033c0
mov eax, dword [esi + 0x10]
sub eax, 0xc92acf94
je 0x403c41
jmp 0x4033d3
mov eax, dword [esi + 0x10]
sub eax, 0xd11c3da0
je 0x403c8f
jmp 0x4033e6
mov eax, dword [esi + 0x10]
sub eax, 0xd29454ff
je 0x403eec
jmp 0x4033f9
mov eax, dword [esi + 0x10]
sub eax, 0xd37be2f1
je 0x403dd2
jmp 0x40340c
mov eax, dword [esi + 0x10]
sub eax, 0xd8c48d95
je 0x404144
jmp 0x40341f
mov eax, dword [esi + 0x10]
sub eax, 0xe49ac010
je 0x403d67
jmp 0x403432
mov eax, dword [esi + 0x10]
sub eax, 0xe6e31ad5
je 0x4036ac
jmp 0x403445
mov eax, dword [esi + 0x10]
sub eax, 0xe98ae157
je 0x4041c5
jmp 0x403458
mov eax, dword [esi + 0x10]
sub eax, 0xf22f5266
je 0x403aa9
jmp 0x40346b
mov eax, dword [esi + 0x10]
sub eax, 0xf4382715
je 0x403bce
jmp 0x40347e
mov eax, dword [esi + 0x10]
sub eax, 0xf5211ffa
je 0x40382b
jmp 0x403491
mov eax, dword [esi + 0x10]
sub eax, 0x159330
je 0x403ab5
jmp 0x4034a4
mov eax, dword [esi + 0x10]
sub eax, 0x5b6879
je 0x403ce9
jmp 0x4034b7
mov eax, dword [esi + 0x10]
sub eax, 0xba9beb3
je 0x403840
jmp 0x4034ca
mov eax, dword [esi + 0x10]
sub eax, 0xc0b304f
je 0x403f6a
jmp 0x4034dd
mov eax, dword [esi + 0x10]
sub eax, 0xc870bad
je 0x4037bd
jmp 0x4034f0
mov eax, dword [esi + 0x10]
sub eax, 0xd564567
je 0x4038b6
jmp 0x403503
mov eax, dword [esi + 0x10]
sub eax, 0x1512f87d
je 0x403887
jmp 0x403516
mov eax, dword [esi + 0x10]
sub eax, 0x17ab36ce
je 0x404090
jmp 0x403529
mov eax, dword [esi + 0x10]
sub eax, 0x191164c4
je 0x40384c
jmp 0x40353c
mov eax, dword [esi + 0x10]
sub eax, 0x1a7fb8ae
je 0x4041a4
jmp 0x40354f
mov eax, dword [esi + 0x10]
sub eax, 0x1aa425b1
je 0x403f94
jmp 0x403562
mov eax, dword [esi + 0x10]
sub eax, 0x1ebea1b7
je 0x403f32
jmp 0x403575
mov eax, dword [esi + 0x10]
sub eax, 0x2b5b39b5
je 0x403dc6
jmp 0x403588
mov eax, dword [esi + 0x10]
sub eax, 0x372ac7e8
je 0x403f47
jmp 0x40359b
mov eax, dword [esi + 0x10]
sub eax, 0x3811bec7
je 0x4041d4
jmp 0x4035ae
mov eax, dword [esi + 0x10]
sub eax, 0x3b712876
je 0x4039a0
jmp 0x4035c1
mov eax, dword [esi + 0x10]
sub eax, 0x437d6c21
je 0x40365e
jmp 0x4035d4
mov eax, dword [esi + 0x10]
sub eax, 0x459af142
je 0x403ee0
jmp 0x4035e7
mov eax, dword [esi + 0x10]
sub eax, 0x469d5c11
je 0x403d91
jmp 0x4035fa
mov eax, dword [esi + 0x10]
sub eax, 0x63938ee6
je 0x4037b1
jmp 0x40360d
mov eax, dword [esi + 0x10]
sub eax, 0x72bb54b4
je 0x403860
jmp 0x403620
mov eax, dword [esi + 0x10]
sub eax, 0x7307bc7c
je 0x403d73
jmp 0x403633
mov eax, dword [esi + 0x10]
sub eax, 0x76e5e4b0
je 0x40387b
jmp 0x403646
mov eax, dword [esi + 0x10]
sub eax, 0x77b2d2cd
je 0x403fcf
jmp 0x403659
jmp 0x40420f
mov eax, dword [0x4e25f4]
mov ecx, dword [0x4e25f0]
mov edx, eax
add edx, 0x1987e96a
sub edx, 1
sub edx, 0x1987e96a
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, 0xb86e0ce1
mov ecx, 0xe6e31ad5
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x28]
mov edx, dword [esi + 0x24]
vmovsd xmm0, qword [esi + 0x18]
push eax
sub esp, 0x14
mov edi, esp
mov dword [esi + 0x54], edi
sub esp, 0x18
mov edi, esp
mov dword [esi + 0x58], edi
push eax
mov edi, esp
mov dword [esi + 0x5c], edi
sub esp, 0x18
mov edi, esp
mov dword [esi + 0x60], edi
sub esp, 0x18
mov edi, esp
mov dword [esi + 0x64], edi
push eax
mov edi, esp
mov dword [esi + 0x68], edi
sub esp, 0x18
mov edi, esp
mov dword [esi + 0x6c], edi
sub esp, 0x18
mov edi, esp
mov dword [esi + 0x70], edi
push eax
mov edi, esp
mov dword [esi + 0x74], edi
vmovsd qword [esi + 0x48], xmm0
mov dword [esi + 0x44], edx
mov dword [esi + 0x40], ecx
mov dword [esi + 0x3c], eax
vmovsd xmm0, qword [0x42d1a0]
vmovsd qword [esi + 0x30], xmm0
lea ecx, [esi + 0xa8]
lea eax, str.oifyipikrubqvkwbyox
sub esp, 4
mov dword [esp], eax
call fcn.00414620
lea ecx, [esi + 0x90]
lea eax, str.ckocmbkoitxlzcissppmlfypwm
sub esp, 4
mov dword [esp], eax
call fcn.00414620
mov ecx, dword [0x4e25f4]
mov eax, dword [0x4e25f0]
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, 0xb86e0ce1
mov ecx, 0x63938ee6
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov dword [esi + 0x2c], 0xc870bad
jmp 0x40420f
mov ecx, dword [esi + 0x54]
lea eax, str.oifyipikrubqvkwbyox
sub esp, 4
mov dword [esp], eax
call fcn.00414620
mov ecx, dword [esi + 0x58]
lea eax, str.oifyipikrubqvkwbyox
sub esp, 4
mov dword [esp], eax
call fcn.00414620
mov eax, dword [esi + 0x54]
mov ecx, dword [esi + 0x58]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00414950
add esp, 8
mov byte [esi + 0xf], al
mov ecx, dword [esi + 0x58]
call fcn.00414790
mov ecx, dword [esi + 0x54]
call fcn.00414790
mov dl, byte [esi + 0xf]
mov eax, 0x3b712876
mov ecx, 0xf5211ffa
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov eax, dword [esi + 0x5c]
mov dword [eax], 0x1c
mov dword [esi + 0x2c], 0xba9beb3
jmp 0x40420f
mov dword [esi + 0x2c], 0x191164c4
jmp 0x40420f
mov eax, dword [esi + 0x5c]
mov eax, dword [eax]
mov dword [esi + 0x78], eax
mov dword [esi + 0x2c], 0x72bb54b4
jmp 0x40420f
mov edx, dword [esi + 0x78]
mov eax, 0xd564567
mov ecx, 0x76e5e4b0
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov dword [esi + 0x2c], 0x1512f87d
jmp 0x40420f
mov eax, dword [esi + 0x5c]
mov eax, dword [eax]
mov dword [esi + 0x7c], eax
mov dword [esi + 0x2c], 0x9d71f441
jmp 0x40420f
mov ecx, dword [esi + 0x7c]
xor eax, eax
sub eax, 0xffffffff
sub ecx, eax
mov eax, dword [esi + 0x5c]
mov dword [eax], ecx
mov dword [esi + 0x2c], 0x191164c4
jmp 0x40420f
mov ecx, dword [0x4e25f4]
mov eax, dword [0x4e25f0]
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, 0xd8c48d95
mov ecx, 0xa167960d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov ecx, dword [0x4e25f4]
mov eax, dword [0x4e25f0]
mov edx, ecx
sub edx, 0x1a890bf5
sub edx, 1
add edx, 0x1a890bf5
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, 0xd8c48d95
mov ecx, 0x95997807
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov dword [esi + 0x2c], 0x3b712876
jmp 0x40420f
mov eax, dword [0x4e25f4]
mov ecx, dword [0x4e25f0]
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, 0xb961af4b
mov ecx, 0xb0e2eff5
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov ecx, dword [esi + 0x60]
lea eax, str.oifyipikrubqvkwbyox
sub esp, 4
mov dword [esp], eax
call fcn.00414620
mov ecx, dword [esi + 0x64]
lea eax, str.oifyipikrubqvkwbyox
sub esp, 4
mov dword [esp], eax
call fcn.00414620
mov eax, dword [esi + 0x60]
mov ecx, dword [esi + 0x64]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00414950
add esp, 8
and al, 1
mov byte [esi + 0x83], al
mov ecx, dword [esi + 0x64]
call fcn.00414790
mov ecx, dword [0x4e25f4]
mov eax, dword [0x4e25f0]
mov edx, ecx
sub edx, 0xe861e885
sub edx, 1
add edx, 0xe861e885
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, 0xb961af4b
mov ecx, 0xf22f5266
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov dword [esi + 0x2c], 0x159330
jmp 0x40420f
mov ecx, dword [esi + 0x60]
call fcn.00414790
mov dl, byte [esi + 0x83]
mov eax, 0xd37be2f1
mov ecx, 0xa5bba157
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov ecx, dword [0x4e25f4]
mov eax, dword [0x4e25f0]
mov edx, ecx
add edx, 0x29365a3e
sub edx, 1
sub edx, 0x29365a3e
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, 0x1a7fb8ae
mov ecx, 0xa98a82fb
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov eax, dword [esi + 0x68]
mov dword [eax], 0x2f
mov ecx, dword [0x4e25f4]
mov eax, dword [0x4e25f0]
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, 0x1a7fb8ae
mov ecx, 0xbc9ac43e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov dword [esi + 0x2c], 0xf4382715
jmp 0x40420f
mov ecx, dword [0x4e25f4]
mov eax, dword [0x4e25f0]
mov edx, ecx
sub edx, 0x36247ee0
sub edx, 1
add edx, 0x36247ee0
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, 0xa07a1ad2
mov ecx, 0xc92acf94
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov eax, dword [0x4e25f4]
mov ecx, dword [0x4e25f0]
mov edx, eax
sub edx, 0x1ace13a4
sub edx, 1
add edx, 0x1ace13a4
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, 0xa07a1ad2
mov ecx, 0xd11c3da0
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov dword [esi + 0x2c], 0xba6a649b
jmp 0x40420f
mov eax, dword [0x4e25f4]
mov ecx, dword [0x4e25f0]
mov edx, eax
add edx, 0xb3770bbe
sub edx, 1
sub edx, 0xb3770bbe
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, 0xe98ae157
mov ecx, 0x5b6879
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov eax, dword [esi + 0x68]
mov eax, dword [eax]
mov dword [esi + 0x84], eax
mov ecx, dword [0x4e25f4]
mov eax, dword [0x4e25f0]
mov edx, ecx
sub edx, 0x4237f707
sub edx, 1
add edx, 0x4237f707
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, 0xe98ae157
mov ecx, 0xe49ac010
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov dword [esi + 0x2c], 0x7307bc7c
jmp 0x40420f
mov edx, dword [esi + 0x84]
mov eax, 0x2b5b39b5
mov ecx, 0x469d5c11
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov dword [esi + 0x2c], 0xb8123167
jmp 0x40420f
mov eax, dword [esi + 0x68]
mov ecx, dword [eax]
xor eax, eax
sub eax, 0xffffffff
sub ecx, eax
mov eax, dword [esi + 0x68]
mov dword [eax], ecx
mov dword [esi + 0x2c], 0xaeba6d9b
jmp 0x40420f
mov dword [esi + 0x2c], 0xba6a649b
jmp 0x40420f
mov dword [esi + 0x2c], 0xd37be2f1
jmp 0x40420f
mov ecx, dword [0x4e25f4]
mov eax, dword [0x4e25f0]
mov edx, ecx
add edx, 0x99a7b34
sub edx, 1
sub edx, 0x99a7b34
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, 0x3811bec7
mov ecx, 0x96157418
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov ecx, dword [esi + 0x6c]
lea eax, str.ckocmbkoitxlzcissppmlfypwm
sub esp, 4
mov dword [esp], eax
call fcn.00414620
mov ecx, dword [esi + 0x70]
lea eax, str.ckocmbkoitxlzcissppmlfypwm
sub esp, 4
mov dword [esp], eax
call fcn.00414620
mov ecx, dword [0x4e25f4]
mov eax, dword [0x4e25f0]
mov edx, ecx
add edx, 0xc2211cc5
sub edx, 1
sub edx, 0xc2211cc5
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, 0x3811bec7
mov ecx, 0x459af142
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov dword [esi + 0x2c], 0xd29454ff
jmp 0x40420f
mov eax, dword [esi + 0x6c]
mov ecx, dword [esi + 0x70]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00414950
add esp, 8
mov byte [esi + 0xe], al
mov ecx, dword [esi + 0x70]
call fcn.00414790
mov ecx, dword [esi + 0x6c]
call fcn.00414790
mov dl, byte [esi + 0xe]
mov eax, 0x817f9431
mov ecx, 0x1ebea1b7
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov eax, dword [esi + 0x74]
mov dword [eax], 7
mov dword [esi + 0x2c], 0x372ac7e8
jmp 0x40420f
mov dword [esi + 0x2c], 0xbeae8f9b
jmp 0x40420f
mov eax, dword [esi + 0x74]
mov eax, dword [eax]
mov dword [esi + 0x88], eax
mov dword [esi + 0x2c], 0xc0b304f
jmp 0x40420f
mov edx, dword [esi + 0x88]
mov eax, 0x77b2d2cd
mov ecx, 0x8e394e8d
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov dword [esi + 0x2c], 0x1aa425b1
jmp 0x40420f
mov eax, dword [esi + 0x74]
mov eax, dword [eax]
add eax, 0xfcad33fc
add eax, 0xffffffff
sub eax, 0xfcad33fc
mov dword [esi + 0x8c], eax
mov dword [esi + 0x2c], 0xabdae6b8
jmp 0x40420f
mov eax, dword [esi + 0x74]
mov ecx, dword [esi + 0x8c]
mov dword [eax], ecx
mov dword [esi + 0x2c], 0xbeae8f9b
jmp 0x40420f
mov eax, dword [0x4e25f4]
mov ecx, dword [0x4e25f0]
mov edx, eax
sub edx, 0xa8aecb67
sub edx, 1
add edx, 0xa8aecb67
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, 0x84880cc3
mov ecx, 0xac9ec177
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov ecx, dword [0x4e25f4]
mov eax, dword [0x4e25f0]
mov edx, ecx
add edx, 0x17c26f1c
sub edx, 1
sub edx, 0x17c26f1c
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, 0x84880cc3
mov ecx, 0x17ab36ce
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x2c], eax
jmp 0x40420f
mov dword [esi + 0x2c], 0x817f9431
jmp 0x40420f
lea ecx, [esi + 0x90]
call fcn.00414790
mov dword [esi + 0x2c], 0x9b8aebdc
jmp 0x40420f
lea ecx, [esi + 0xa8]
call fcn.00414790
fld dword [0x42d1a8]
fstp xword [esi + 4]
mov ecx, dword [esi + 0xc0]
xor ecx, ebp
call fcn.0041e1d0
fld xword [esi + 4]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x10
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x28]
mov edx, dword [esi + 0x24]
vmovsd xmm0, qword [esi + 0x18]
vmovsd qword [esi + 0x48], xmm0
mov dword [esi + 0x44], edx
mov dword [esi + 0x40], ecx
mov dword [esi + 0x3c], eax
vmovsd xmm0, qword [0x42d1a0]
vmovsd qword [esi + 0x30], xmm0
lea ecx, [esi + 0xa8]
lea eax, str.oifyipikrubqvkwbyox
sub esp, 4
mov dword [esp], eax
call fcn.00414620
lea ecx, [esi + 0x90]
lea eax, str.ckocmbkoitxlzcissppmlfypwm
sub esp, 4
mov dword [esp], eax
call fcn.00414620
mov dword [esi + 0x2c], 0xe6e31ad5
jmp 0x40420f
mov dword [esi + 0x2c], 0xa167960d
jmp 0x40420f
mov ecx, dword [esi + 0x60]
lea eax, str.oifyipikrubqvkwbyox
sub esp, 4
mov dword [esp], eax
call fcn.00414620
mov ecx, dword [esi + 0x64]
lea eax, str.oifyipikrubqvkwbyox
sub esp, 4
mov dword [esp], eax
call fcn.00414620
mov eax, dword [esi + 0x60]
mov ecx, dword [esi + 0x64]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00414950
add esp, 8
mov ecx, dword [esi + 0x64]
call fcn.00414790
mov dword [esi + 0x2c], 0xb0e2eff5
jmp 0x40420f
mov eax, dword [esi + 0x68]
mov dword [eax], 0x2f
mov dword [esi + 0x2c], 0xa98a82fb
jmp 0x40420f
mov dword [esi + 0x2c], 0xc92acf94
jmp 0x40420f
mov eax, dword [esi + 0x68]
mov dword [esi + 0x2c], 0x5b6879
jmp 0x40420f
mov ecx, dword [esi + 0x6c]
lea eax, str.ckocmbkoitxlzcissppmlfypwm
sub esp, 4
mov dword [esp], eax
call fcn.00414620
mov ecx, dword [esi + 0x70]
lea eax, str.ckocmbkoitxlzcissppmlfypwm
sub esp, 4
mov dword [esp], eax
call fcn.00414620
mov dword [esi + 0x2c], 0x96157418
jmp 0x40420f
mov dword [esi + 0x2c], 0xac9ec177
jmp 0x40322e