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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xc0
mov esi, esp
mov dword [esi + 0x78], ecx
mov eax, dword [0x5f12c0]
xor eax, ebp
mov dword [esi + 0xb8], eax
mov eax, dword [0x5f3010]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, dword [0x5f300c]
sete byte [esi + 0x2f]
cmp eax, 0xa
mov eax, 0xfc6dd4ce
setl byte [esi + 0x30]
jmp 0x4203b0
mov eax, 0x14f8b589
mov edi, 0x5a00edb4
mov ebx, 0x2aee8cea
imul dword [esi + 0x48]
mov eax, edx
shr eax, 0x1f
sar edx, 0xd
add edx, eax
mov eax, dword [esi + 4]
add edx, dword [eax]
mov eax, dword [esi + 4]
mov dword [eax], edx
mov eax, dword [esi + 0x3c]
mov eax, dword [0x5f3010]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x2aee8cea
sete cl
cmove eax, edi
cmp dword [0x5f300c], 0xa
setl dl
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
nop word cs:[eax + eax]
cmp eax, 0x5d61edf
jg 0x420400
cmp eax, 0xd32d7ddd
jg 0x420470
cmp eax, 0xc438f81f
jg 0x420541
cmp eax, 0x97e4149a
jg 0x420713
cmp eax, 0x831c14b6
je 0x420a88
cmp eax, 0x8666412e
je 0x420af9
cmp eax, 0x92a780e7
jne 0x4203b0
mov eax, 0xf0f96a15
jmp 0x4203b0
cmp eax, 0x4bf4cc3c
jg 0x420500
cmp eax, 0x2aee8ce9
jg 0x4205e0
cmp eax, 0x11c3a656
jle 0x42076e
cmp eax, 0x11c3a657
je 0x420b03
cmp eax, 0x1a959ea3
je 0x420b62
cmp eax, 0x1c2145d9
jne 0x4203b0
mov eax, dword [esi + 0x38]
mov eax, dword [0x5f3010]
mov ebx, 0x831c14b6
mov edi, 0x3b3b48d
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x3b3b48d
jmp 0x420ef8
cmp eax, 0xf0e25dea
jg 0x42066f
cmp eax, 0xdc43a0be
jle 0x42091b
cmp eax, 0xdc43a0bf
je 0x420b81
cmp eax, 0xe8d7a651
je 0x420c7b
cmp eax, 0xea45b7e4
jne 0x4203b0
mov eax, dword [0x5f3010]
mov ebx, 0xd32d7dde
mov edi, 0xba931483
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0xba931483
sete cl
cmove eax, ebx
cmp dword [0x5f300c], 0xa
setl dl
cmovge eax, edi
mov edi, dword [esi + 0x5c]
xor dl, cl
mov edx, dword [esi + 0x58]
cmovne eax, ebx
mov dword [esi + 0x50], edi
mov dword [esi + 0x54], edx
jmp 0x4203b0
cmp eax, 0x659a7d18
jg 0x4206cc
cmp eax, 0x526afdaa
jle 0x420974
cmp eax, 0x526afdab
je 0x420c9a
cmp eax, 0x5369fef8
je 0x420cc3
cmp eax, 0x5a00edb4
jne 0x4203b0
mov eax, 0xd8fb0599
jmp 0x4203b0
cmp eax, 0xc9ddb582
jle 0x420994
cmp eax, 0xc9ddb583
je 0x420cd9
cmp eax, 0xd0afb5f3
je 0x420cff
cmp eax, 0xd10bb047
jne 0x4203b0
mov eax, dword [esi + 4]
mov eax, dword [eax]
mov ecx, dword [esi + 0x10]
add eax, 0x32
push 0
push eax
call fcn.00431630
mov edx, dword [0x5f3010]
mov ecx, dword [0x5f300c]
mov ebx, 0x4c7aab1b
lea eax, [edx + 1]
imul eax, edx
mov edi, eax
xor edi, 0xfffffffe
test edi, eax
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xc9ddb583
cmovne edx, ebx
test edi, eax
mov eax, edx
cmove eax, ebx
cmp ecx, 0xa
mov ecx, dword [esi + 0x44]
mov ecx, dword [esi + 0x20]
cmovge eax, edx
vmovsd xmm0, qword [ecx]
vmovsd qword [esi + 0xa8], xmm0
mov ecx, dword [esi + 0x18]
mov ecx, dword [ecx]
mov dword [esi + 0x94], ecx
jmp 0x4203b0
cmp eax, 0x391e5400
jle 0x4209c3
cmp eax, 0x391e5401
je 0x420d15
cmp eax, 0x3dbef1de
je 0x420d3f
cmp eax, 0x40403477
jne 0x4203b0
push eax
mov eax, esp
mov dword [esi + 0x8c], eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x20], eax
push eax
mov edi, dword [0x5f3010]
mov edx, dword [0x5f300c]
mov ecx, 0x3dbef1de
mov dword [esi + 0xc], esp
lea eax, [edi + 1]
imul eax, edi
mov edi, eax
xor edi, 0xfffffffe
test edi, eax
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0x5d61ee0
cmovne ebx, ecx
test edi, eax
mov eax, ebx
cmove eax, ecx
cmp edx, 0xa
mov edx, dword [esi + 0xc]
cmovge eax, ebx
mov dword [esi + 0x60], edx
jmp 0x4203b0
cmp eax, 0xf4ae19c1
jle 0x4209ef
cmp eax, 0xf4ae19c2
je 0x420d49
cmp eax, 0xfc6dd4ce
je 0x420d5b
cmp eax, 0x3b3b48d
jne 0x4203b0
mov eax, dword [esi + 0x14]
cmp dword [eax], 0x2000
mov eax, dword [esi + 0x38]
sete byte [eax]
mov eax, dword [esi + 0x24]
mov eax, dword [esi + 0x14]
cmp dword [eax], 0x3000
mov eax, dword [esi + 0x24]
sete byte [eax]
mov eax, dword [esi + 0x18]
mov eax, dword [esi + 0x24]
mov eax, 0x831c14b6
jmp 0x4203b0
cmp eax, 0x73b1df35
jle 0x420a2c
cmp eax, 0x73b1df36
je 0x420d85
cmp eax, 0x7408c174
je 0x420d8f
cmp eax, 0x7db22777
jne 0x4203b0
mov ecx, dword [esi + 0x90]
call fcn.00430aa0
mov dword [esi + 0x70], eax
mov dword [esi + 0x74], edx
mov eax, 0x1a959ea3
jmp 0x4203b0
cmp eax, 0xb99dc0ca
je 0x420dd4
cmp eax, 0xba931483
jne 0x421251
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0x50]
mov edx, dword [esi + 0x54]
mov dword [eax], ecx
mov dword [eax + 4], edx
mov eax, dword [esi + 0x28]
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x18]
push dword [eax]
push dword [ecx + 4]
push dword [ecx]
call fcn.00437050
add esp, 0xc
mov ecx, dword [esi + 0x28]
mov dword [ecx], eax
mov eax, dword [esi + 4]
mov eax, dword [esi + 0x28]
mov eax, dword [eax]
mov ecx, dword [esi + 4]
mov dword [ecx], eax
mov eax, dword [esi + 0x38]
mov eax, 0xd32d7dde
jmp 0x4203b0
cmp eax, 0x5d61ee0
je 0x420de9
cmp eax, 0x71bf41f
jne 0x4203b0
push eax
mov eax, esp
mov dword [esi + 0x40], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x10], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x4c], eax
push eax
mov eax, esp
mov dword [esi + 0x14], eax
push eax
mov eax, esp
mov dword [esi + 0x38], eax
push eax
mov eax, esp
mov dword [esi + 0x24], eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x18], eax
push eax
mov eax, esp
mov dword [esi + 0x28], eax
push eax
mov eax, esp
mov dword [esi + 4], eax
push eax
mov eax, esp
mov dword [esi + 0x3c], eax
push eax
mov eax, esp
mov dword [esi + 0x44], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x64], eax
mov ecx, dword [ebp + 8]
vmovsd xmm0, qword [ebp + 0x1c]
mov eax, dword [esi + 0x8c]
mov dword [eax], ecx
movzx ecx, byte [ebp + 0x18]
mov eax, dword [esi + 0x20]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x60]
mov byte [eax], cl
mov ecx, dword [ebp + 0x14]
mov eax, dword [esi + 0x40]
mov dword [eax], ecx
mov eax, dword [esi + 0x78]
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x10]
call fcn.00401280
mov eax, dword [esi + 0x4c]
mov eax, dword [esi + 0x14]
mov eax, dword [esi + 0x40]
mov edx, dword [0x5f33d0]
mov edi, 0x26f59cec
mov ecx, dword [eax]
lea eax, [edx + 1]
imul eax, edx
test al, 1
sete dl
cmp dword [0x5f33cc], 0xa
mov ecx, dword [ecx + 0x14]
setge dh
setl bl
mov dword [esi + 0x1c], ecx
mov ecx, 0x3c125e9d
or dh, al
xor bl, dl
mov eax, 0x26f59cec
not dh
or dh, bl
mov ebx, 0xedef0ef4
test dh, 1
mov edx, 0xa55e6e8b
cmovne ebx, ecx
cmovne eax, edx
mov edx, 0xec120fa7
mov ecx, 0x209634c2
mov dword [esi + 0xc], ebx
mov ebx, 0xedef0ef4
cmovne edi, edx
cmovne ebx, ecx
mov ecx, 0x45f9e152
jmp 0x420890
mov ecx, 0xec120fa7
nop
mov edx, ecx
cmp ecx, 0x26f59ceb
jle 0x4208c0
cmp edx, 0x425fe7bf
jg 0x4208e0
cmp edx, 0x26f59cec
je 0x42088a
mov ecx, edx
cmp edx, 0x3c125e9d
jne 0x420890
mov ecx, 0x425fe7c0
jmp 0x420890
cmp edx, 0xedef0ef3
jle 0x4208f8
cmp edx, 0xedef0ef4
je 0x420911
mov ecx, edx
cmp edx, 0x209634c2
jne 0x420890
mov ecx, dword [esi + 0xc]
jmp 0x420890
mov ecx, edi
cmp edx, 0x425fe7c0
je 0x420890
mov ecx, edx
cmp edx, 0x45f9e152
jne 0x420890
mov ecx, ebx
jmp 0x420890
mov ecx, eax
cmp edx, 0xec120fa7
je 0x420890
mov ecx, edx
cmp edx, 0xa55e6e8b
jne 0x420890
jmp 0x420df3
mov ecx, 0x209634c2
jmp 0x420890
cmp eax, 0xd32d7dde
je 0x420e12
cmp eax, 0xd8fb0599
jne 0x4203b0
mov edx, dword [0x5f3010]
mov ecx, dword [0x5f300c]
mov edi, 0xc9ddb583
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0xd10bb047
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x4203b0
cmp eax, 0x4bf4cc3d
je 0x420e97
cmp eax, 0x4c7aab1b
jne 0x4203b0
mov eax, 0xdc43a0bf
jmp 0x4203b0
cmp eax, 0xc438f820
je 0x42034a
cmp eax, 0xc7e2eb4e
jne 0x4203b0
mov eax, dword [esi + 0x20]
vmovsd xmm0, qword [eax]
mov eax, 0x7408c174
vmovsd qword [esi + 0xa0], xmm0
jmp 0x4203b0
cmp eax, 0x2aee8cea
je 0x420eaf
cmp eax, 0x32c94f23
jne 0x4203b0
mov eax, dword [esi + 0x70]
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 0x74]
mov dword [esi + 0x58], eax
mov eax, 0xea45b7e4
jmp 0x4203b0
cmp eax, 0xf0e25deb
je 0x420ede
cmp eax, 0xf0f96a15
jne 0x4203b0
mov eax, dword [0x5f3010]
mov edi, 0x32c94f23
mov ebx, 0x92a780e7
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x92a780e7
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
jmp 0x42038a
cmp eax, 0x659a7d19
je 0x420f1d
cmp eax, 0x66ef2a67
jne 0x4203b0
mov eax, dword [esi + 0x20]
vmovsd xmm0, qword [eax]
mov eax, dword [esi + 0x3c]
sub esp, 0xc
mov dword [esp + 8], eax
vmovsd qword [esp], xmm0
call fcn.00441dfb
fstp st(0)
add esp, 0xc
mov eax, dword [0x5f3010]
mov ebx, 0x73b1df36
mov edi, 0x391e5401
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x391e5401
jmp 0x420f00
mov eax, dword [esi + 0x14]
mov edi, 0x3b3b48d
cmp dword [eax], 0x2000
mov eax, dword [esi + 0x38]
sete byte [eax]
mov eax, dword [esi + 0x24]
mov eax, dword [esi + 0x14]
cmp dword [eax], 0x3000
mov eax, dword [esi + 0x24]
sete byte [eax]
mov edx, dword [0x5f3010]
mov ecx, dword [0x5f300c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x5369fef8
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
mov ecx, dword [esi + 0x18]
mov edx, dword [esi + 0x24]
cmovge eax, edi
cmp byte [edx], 0
setne byte [esi + 0x31]
jmp 0x4203b0
mov eax, 0xd0afb5f3
jmp 0x4203b0
mov edx, dword [0x5f3010]
mov ecx, dword [0x5f300c]
mov edi, 0xf4ae19c2
vmovsd xmm0, qword [esi + 0xa0]
vandpd xmm0, xmm0, xmmword [0x45a250]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x8666412e
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
vucomisd xmm0, qword [0x45a240]
seta byte [esi + 0x33]
jmp 0x4203b0
mov eax, dword [0x5f3010]
mov ebx, 0xf0f96a15
mov edi, 0x92a780e7
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x92a780e7
jmp 0x420ef8
mov eax, dword [esi + 0x40]
mov ebx, 0xedef0ef4
mov edi, 0x26f59cec
mov ecx, dword [eax]
mov eax, dword [0x5f33d0]
lea edx, [eax + 1]
mov ecx, dword [ecx + 0x14]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
mov dword [esi + 0x1c], ecx
mov ecx, 0x3c125e9d
sete al
cmp dword [0x5f33cc], 0xa
setl dl
or dl, al
mov eax, 0x26f59cec
mov edx, 0xa55e6e8b
cmovne ebx, ecx
cmovne eax, edx
mov edx, 0xec120fa7
mov ecx, 0x209634c2
mov dword [esi + 0xc], ebx
mov ebx, 0xedef0ef4
cmovne edi, edx
cmovne ebx, ecx
mov ecx, 0x45f9e152
jmp 0x420bf0
mov ecx, 0xec120fa7
mov edx, ecx
cmp ecx, 0x26f59ceb
jle 0x420c20
cmp edx, 0x425fe7bf
jg 0x420c40
cmp edx, 0x26f59cec
je 0x420beb
mov ecx, edx
cmp edx, 0x3c125e9d
jne 0x420bf0
mov ecx, 0x425fe7c0
jmp 0x420bf0
cmp edx, 0xedef0ef3
jle 0x420c58
cmp edx, 0xedef0ef4
je 0x420c71
mov ecx, edx
cmp edx, 0x209634c2
jne 0x420bf0
mov ecx, dword [esi + 0xc]
jmp 0x420bf0
mov ecx, edi
cmp edx, 0x425fe7c0
je 0x420bf0
mov ecx, edx
cmp edx, 0x45f9e152
jne 0x420bf0
mov ecx, ebx
jmp 0x420bf0
mov ecx, eax
cmp edx, 0xec120fa7
je 0x420bf0
mov ecx, edx
cmp edx, 0xa55e6e8b
jne 0x420bf0
jmp 0x420f33
mov ecx, 0x209634c2
jmp 0x420bf0
mov eax, dword [esi + 0x3c]
mov eax, dword [eax]
mov ecx, eax
neg ecx
cmovs ecx, eax
imul eax, ecx, 0x7597
mov dword [esi + 0x48], eax
mov eax, 0xf0e25deb
jmp 0x4203b0
mov eax, dword [esi + 0x3c]
mov eax, dword [0x5f3010]
mov edi, 0x66ef2a67
mov ebx, 0x391e5401
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x391e5401
jmp 0x42038a
cmp byte [esi + 0x31], 0
mov eax, 0xb99dc0ca
mov ecx, 0x4bf4cc3d
cmovne eax, ecx
jmp 0x4203b0
mov eax, dword [esi + 4]
mov eax, dword [eax]
mov ecx, dword [esi + 0x10]
add eax, 0x32
push 0
push eax
call fcn.00431630
mov eax, dword [esi + 0x44]
mov eax, dword [esi + 0x20]
mov eax, dword [esi + 0x18]
mov eax, 0xd10bb047
jmp 0x4203b0
cmp byte [esi + 0x33], 0
mov eax, 0xd8fb0599
mov ecx, 0x526afdab
cmovne eax, ecx
jmp 0x4203b0
mov eax, dword [esi + 0x20]
vmovsd xmm0, qword [eax]
mov eax, dword [esi + 0x3c]
sub esp, 0xc
mov dword [esp + 8], eax
vmovsd qword [esp], xmm0
call fcn.00441dfb
fstp st(0)
add esp, 0xc
mov eax, 0x66ef2a67
jmp 0x4203b0
mov eax, 0x71bf41f
jmp 0x4203b0
vmovsd xmm0, qword [esi + 0xa0]
mov eax, 0x11c3a657
jmp 0x4203b0
movzx ecx, byte [esi + 0x2f]
movzx eax, byte [esi + 0x30]
mov edi, 0x40403477
mov edx, ecx
xor dl, al
mov edx, 0x5d61ee0
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x4203b0
mov eax, 0xe8d7a651
jmp 0x4203b0
mov edx, dword [0x5f3010]
mov ecx, dword [0x5f300c]
mov edi, 0x11c3a657
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xf4ae19c2
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x4203b0
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
mov dword [esi + 0x90], eax
mov eax, 0x7db22777
jmp 0x4203b0
mov eax, 0x40403477
jmp 0x4203b0
mov eax, dword [esi + 0x1c]
mov ecx, 0x3000
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
mov edx, dword [esi + 0x14]
and eax, ecx
mov dword [edx], eax
mov eax, 0x1c2145d9
jmp 0x4203b0
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0x50]
mov edx, dword [esi + 0x54]
mov dword [eax], ecx
mov dword [eax + 4], edx
mov eax, dword [esi + 0x28]
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x18]
push dword [eax]
push dword [ecx + 4]
push dword [ecx]
call fcn.00437050
add esp, 0xc
mov ecx, dword [esi + 0x28]
mov edi, 0xba931483
mov dword [ecx], eax
mov eax, dword [esi + 4]
mov eax, dword [esi + 0x28]
mov eax, dword [eax]
mov ecx, dword [esi + 4]
mov dword [ecx], eax
mov edx, dword [0x5f3010]
mov ecx, dword [0x5f300c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x659a7d19
cmovne edi, ebx
test edx, eax
mov edx, dword [esi + 0x38]
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
cmp byte [edx], 0
setne byte [esi + 0x32]
jmp 0x4203b0
mov dword [esi + 0x5c], 0xffffffff
mov eax, 0xea45b7e4
mov dword [esi + 0x58], 0xffffffff
jmp 0x4203b0
mov eax, dword [esi + 0x48]
mov eax, dword [esi + 0x48]
mov eax, 0x14f8b589
imul dword [esi + 0x48]
mov eax, edx
shr eax, 0x1f
sar edx, 0xd
add edx, eax
mov eax, dword [esi + 4]
add edx, dword [eax]
mov eax, dword [esi + 4]
mov dword [eax], edx
mov eax, dword [esi + 0x3c]
mov eax, 0xc438f820
jmp 0x4203b0
mov eax, dword [0x5f3010]
mov ebx, 0xc438f820
mov edi, 0x2aee8cea
lea ecx, [eax - 1]
imul ecx, eax
mov eax, 0x2aee8cea
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmove eax, ebx
cmp dword [0x5f300c], 0xa
setl dl
cmovge eax, edi
xor dl, cl
cmovne eax, ebx
jmp 0x4203b0
cmp byte [esi + 0x32], 0
mov eax, 0xd8fb0599
mov ecx, 0xc7e2eb4e
cmovne eax, ecx
jmp 0x4203b0
mov eax, dword [esi + 0x1c]
mov dword [esi + 8], eax
push dword [esi + 8]
push 0
push dword [esi + 0x4c]
push dword [esi + 0x68]
call fcn.00431ca0
add esp, 0x10
mov dword [esi + 0x7c], eax
mov ebx, 0x632cf86b
mov edi, 0x50b11332
mov eax, dword [esi + 0x10]
mov dword [esi + 0xc], eax
mov eax, dword [0x5f3018]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, dword [0x5f3014]
setne cl
sete byte [esi + 0x36]
cmp eax, 0xa
setge al
setl byte [esi + 0x37]
mov edx, eax
or al, cl
xor dl, cl
xor al, 1
mov ecx, 0x632cf86b
or al, dl
mov eax, 0xe0f7153
mov edx, 0xa7f33ce6
cmovne ecx, eax
mov eax, 0x1d18e69b
mov dword [esi + 0x1c], ecx
cmovne ebx, eax
mov ecx, 0x50b11332
mov eax, 0x43b8cf2f
cmovne ecx, eax
mov eax, 0x44190755
cmovne edi, eax
mov eax, 0x770c0c59
mov dword [esi + 0x88], ecx
cmovne eax, edx
mov edx, 0x6b930bb5
mov dword [esi + 0x84], edi
mov dword [esi + 0x80], eax
jmp 0x420ff0
mov ecx, dword [esi + 0xb4]
mov edx, 0x1d18e69b
nop
mov ecx, edx
cmp edx, 0x43b8cf2e
jle 0x421030
cmp ecx, 0x632cf86a
jg 0x421070
cmp ecx, 0x43b8cf2f
je 0x4210e6
cmp ecx, 0x44190755
je 0x4210f0
mov edx, ecx
cmp ecx, 0x50b11332
jne 0x420ff0
mov ecx, dword [esi + 0x6c]
mov edx, 0x44190755
jmp 0x420ff0
cmp ecx, 0x164828ce
jle 0x4210c0
cmp ecx, 0x164828cf
je 0x421107
cmp ecx, 0x1d18e69b
je 0x421118
mov edx, ecx
cmp ecx, 0x25e3a06f
jne 0x420ff0
mov edx, dword [esi + 0x84]
jmp 0x420ff0
cmp ecx, 0x632cf86b
je 0x420fe4
cmp ecx, 0x770c0c59
je 0x42112b
mov edx, ecx
cmp ecx, 0x6b930bb5
jne 0x420ff0
movzx ecx, byte [esi + 0x36]
movzx edx, byte [esi + 0x37]
mov edi, 0x770c0c59
mov eax, 0x164828cf
mov ch, cl
xor ch, dl
cmovne edi, eax
test dl, dl
mov edx, edi
cmovne edx, eax
test cl, cl
cmove edx, edi
jmp 0x420ff0
cmp ecx, 0xa7f33ce6
je 0x421135
mov edx, ebx
cmp ecx, 0xcea1b9de
je 0x420ff0
mov edx, ecx
cmp ecx, 0xe0f7153
jne 0x420ff0
jmp 0x42113f
mov edx, 0xcea1b9de
jmp 0x420ff0
mov ecx, dword [esi + 0x6c]
mov edx, dword [esi + 0x88]
add ecx, 0x10
mov dword [esi + 0xb4], ecx
jmp 0x420ff0
mov eax, dword [esi + 0xc]
mov edx, dword [esi + 0x80]
mov dword [esi + 0x6c], eax
jmp 0x420ff0
mov ecx, dword [esi + 0xb4]
mov edx, dword [esi + 0x1c]
mov ecx, dword [ecx]
mov dword [esi + 8], ecx
jmp 0x420ff0
mov edx, 0x164828cf
jmp 0x420ff0
mov edx, 0x25e3a06f
jmp 0x420ff0
mov edi, dword [esi + 8]
mov ebx, dword [esi + 0x10]
mov ecx, 0xd10ec213
nop word [eax + eax]
cmp ecx, 0x4ce63ac3
je 0x42116e
cmp ecx, 0xd10ec213
jne 0x421150
mov ecx, ebx
call fcn.004181e0
mov ecx, 0x4ce63ac3
jmp 0x421150
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
vmovsd xmm0, qword [esi + 0xa8]
mov ecx, dword [esi + 0x94]
mov ecx, 0xc6d602b5
nop word [eax + eax]
cmp ecx, 0xc6d602b5
je 0x4211a2
cmp ecx, 0xa8e1202b
jne 0x421190
jmp 0x4211a9
mov ecx, 0xa8e1202b
jmp 0x421190
lea ecx, [esi + 0xb8]
mov dword [esi + 8], ecx
mov ecx, dword [esi + 0x7c]
mov dword [esi + 0xb4], ecx
push dword [esi + 8]
push 0
push ecx
push edi
push eax
call fcn.004308d0
add esp, 0x14
mov ecx, dword [esi + 0x44]
mov dword [ecx], eax
mov eax, dword [esi + 0x20]
vmovsd xmm0, qword [eax]
sub esp, 8
vmovsd qword [esp], xmm0
call fcn.00437d00
add esp, 8
mov byte [esi + 0x34], al
mov ecx, 0x71b458f0
mov eax, dword [esi + 0x44]
mov eax, dword [eax]
mov dword [esi + 0x98], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0xb4], eax
nop word cs:[eax + eax]
cmp ecx, 0x6d9b2a6e
je 0x421232
cmp ecx, 0x71b458f0
jne 0x421210
mov ecx, dword [esi + 0xb4]
call fcn.00410570
mov ecx, 0x6d9b2a6e
jmp 0x421210
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
mov dword [esi + 0x9c], eax
mov eax, dword [esi + 0x60]
movzx eax, byte [eax]
mov byte [esi + 0x35], al
mov eax, 0x97e4149b
jmp 0x4203b0
cmp eax, 0x97e4149b
jne 0x4203b0
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
mov dword [esi + 0xc], eax
lea eax, [ebp + 0xc]
mov ecx, dword [esi + 0x64]
vmovsd xmm0, qword [eax]
vmovsd qword [ecx], xmm0
mov edx, dword [esi + 0x64]
mov eax, dword [esi + 0x68]
mov dword [esi + 0x1c], eax
movzx edi, byte [esi + 0x34]
mov ebx, dword [esi + 0x98]
mov eax, dword [esi + 0x9c]
movsx ecx, byte [esi + 0x35]
sub esp, 0x20
vmovsd xmm0, qword [edx]
vmovsd qword [esp + 4], xmm0
mov dword [esp + 0x1c], edi
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], ecx
mov edi, dword [ebp + 8]
mov dword [esp + 0x18], ebx
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0x1c]
mov dword [esp], edi
mov dword [esp + 0xc], eax
call fcn.00433240
mov eax, dword [esi + 0x44]
mov eax, dword [esi + 4]
mov eax, dword [esi + 0x28]
mov eax, dword [esi + 0x18]
mov eax, dword [esi + 0x24]
mov eax, dword [esi + 0x38]
mov eax, dword [esi + 0x14]
mov eax, dword [esi + 0x4c]
mov ecx, dword [esi + 0x10]
call section..text
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0xb8]
xor ecx, ebp
call fcn.0043b0d0
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x1c