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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x90
mov esi, esp
mov dword [esi + 0x5c], ecx
mov eax, dword [0x4642c0]
xor eax, ebp
mov dword [esi + 0x88], eax
mov eax, dword [ebp + 0x14]
add eax, 0x14
mov dword [esi + 0x38], eax
mov eax, 0xb8fc2f0f
jmp 0x420040
mov edx, dword [0x465fb8]
mov ecx, dword [0x465fb4]
mov edi, 0xb59786fd
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, 0xfe31d53c
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
nop
cmp eax, 0xfe31d53b
jg 0x4200d0
cmp eax, 0xc0e0f7ed
jg 0x420140
cmp eax, 0xa41646b2
jle 0x420219
cmp eax, 0xb59786fc
jg 0x42036a
cmp eax, 0xa536d688
jle 0x4205d7
cmp eax, 0xa536d689
je 0x420a1e
cmp eax, 0xaeb10b84
je 0x420a82
cmp eax, 0xb3a68153
jne 0x420040
mov eax, dword [esi + 0x20]
mov ecx, dword [eax]
push dword [esi + 0x1c]
call fcn.004361a0
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 0x1c]
mov edx, 0xcfb6f366
nop dword [eax]
cmp edx, 0xcfb6f366
je 0x4200c5
cmp edx, 0x7826866e
jne 0x4200b0
jmp 0x420ac8
mov edx, 0x7826866e
jmp 0x4200b0
cmp eax, 0x44532ac9
jle 0x4201b0
cmp eax, 0x5c923e1e
jle 0x42025a
cmp eax, 0x73b1e0f9
jg 0x420435
cmp eax, 0x5d36f066
jle 0x42063f
cmp eax, 0x5d36f067
je 0x420ae6
cmp eax, 0x665eeeaa
je 0x420b97
cmp eax, 0x6c9779a9
jne 0x420040
mov eax, dword [0x465fb8]
mov ebx, 0xc0e0f7ee
mov edi, 0x13e95537
lea ecx, [eax - 1]
imul ecx, eax
mov eax, 0x13e95537
jmp 0x42173c
cmp eax, 0xe77804ec
jle 0x4202a6
cmp eax, 0xf64e66a5
jg 0x420479
cmp eax, 0xeaaa195e
jle 0x42066b
cmp eax, 0xeaaa195f
je 0x420bfd
cmp eax, 0xf07a59c4
je 0x420ca7
cmp eax, 0xf091b408
jne 0x420040
mov eax, dword [0x465fb8]
mov ebx, 0x58e482dc
mov edi, 0xfdc1ebef
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0xfdc1ebef
jmp 0x421744
cmp eax, 0x26ae6adb
jg 0x420314
cmp eax, 0x137deacc
jle 0x4204af
cmp eax, 0x1a81c918
jle 0x42068b
cmp eax, 0x1a81c919
je 0x420d46
cmp eax, 0x1b63161e
je 0x420d50
cmp eax, 0x1f816b8d
jne 0x420040
push dword [esi + 0x14]
call fcn.00424f70
add esp, 4
mov ecx, dword [esi + 0x14]
mov edi, eax
call fcn.00419e00
mov eax, dword [esi + 0x14]
mov eax, dword [esi + 0x20]
mov dword [eax], edi
mov eax, 0x1b63161e
jmp 0x420040
cmp eax, 0x9673f56c
jle 0x420503
cmp eax, 0xa13f5b84
jle 0x4206ab
cmp eax, 0xa13f5b85
je 0x420d83
cmp eax, 0xa2d7dd69
je 0x420d8d
cmp eax, 0xa300177a
jne 0x420040
mov eax, 0x79391b8
jmp 0x420040
cmp eax, 0x4b7059e1
jle 0x42053a
cmp eax, 0x57acfcc7
jle 0x4206e0
cmp eax, 0x57acfcc8
je 0x420d97
cmp eax, 0x58e482dc
je 0x420db6
cmp eax, 0x594700d5
jne 0x420040
mov eax, dword [esi + 0x2c]
mov eax, dword [esi + 0x20]
mov eax, dword [eax]
mov dword [esi + 0x64], eax
mov eax, 0xc3104c5
jmp 0x420040
cmp eax, 0xcbfec62a
jle 0x420565
cmp eax, 0xdb51fd53
jle 0x42073c
cmp eax, 0xdb51fd54
je 0x420dc0
cmp eax, 0xe48dd425
je 0x420e2a
cmp eax, 0xe572c8ef
jne 0x420040
mov eax, dword [esi + 0xc]
mov ecx, 0x6e4d2381
mov dword [esi + 0x84], eax
nop dword [eax + eax]
cmp ecx, 0x1254646d
je 0x420e34
cmp ecx, 0x6e4d2381
jne 0x4202f0
mov eax, dword [esi + 0x84]
mov ecx, 0x1254646d
add eax, 0x10
jmp 0x4202f0
cmp eax, 0x3984fe6a
jle 0x420590
cmp eax, 0x3b0848f6
jle 0x42075c
cmp eax, 0x3b0848f7
je 0x420e42
cmp eax, 0x3c910405
je 0x420e68
cmp eax, 0x4176ffb6
jne 0x420040
mov eax, dword [0x465fb8]
mov ebx, 0x2f1ea3d8
mov edi, 0x44532aca
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x44532aca
jmp 0x42173c
cmp eax, 0xb8fc2f0e
jle 0x42082e
cmp eax, 0xb8fc2f0f
je 0x420e78
cmp eax, 0xbb12c58a
je 0x420edd
cmp eax, 0xc07e024a
jne 0x420040
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + 0x20]
mov edx, dword [eax + 0x24]
mov eax, dword [0x4663c8]
lea edi, [eax + 1]
mov dword [esi + 0x60], ecx
imul edi, eax
mov eax, edi
xor eax, 0xfffffffe
test eax, edi
mov edi, 0x594bb81
setne al
cmp dword [0x4663c4], 0xa
setge ah
mov bl, ah
or ah, al
xor bl, al
xor ah, 1
or ah, bl
mov ebx, 0x594bb81
mov eax, 0x3b2c0e7f
cmovne ebx, eax
mov eax, 0x58def9ef
cmovne edi, eax
mov eax, 0x63eb2e51
nop dword [eax + eax]
cmp eax, 0x58def9ee
jle 0x420410
cmp eax, 0x58def9ef
je 0x420423
cmp eax, 0x63eb2e51
je 0x420427
cmp eax, 0x6004b7eb
jne 0x4203f0
mov eax, edi
jmp 0x4203f0
cmp eax, 0x594bb81
je 0x42042e
cmp eax, 0x3b2c0e7f
jne 0x4203f0
jmp 0x420f1a
mov eax, ebx
jmp 0x4203f0
mov eax, 0x6004b7eb
jmp 0x4203f0
mov eax, 0x58def9ef
jmp 0x4203f0
cmp eax, 0x7c184b2a
jle 0x420863
cmp eax, 0x7c184b2b
je 0x420f72
cmp eax, 0x7ce6c5d6
je 0x420fa6
cmp eax, 0x7dff8536
jne 0x420040
mov eax, dword [esi + 0x70]
mov ecx, 0xc3a86a53
cmp eax, 0x40
mov eax, 0x4b77d49f
cmove eax, ecx
jmp 0x420040
cmp eax, 0xfcc8c2fd
jle 0x42088f
cmp eax, 0xfcc8c2fe
je 0x420fd9
cmp eax, 0xfdb2f617
je 0x42100d
cmp eax, 0xfdc1ebef
jne 0x420040
mov eax, 0xf091b408
jmp 0x420040
cmp eax, 0xc3104c4
jg 0x4208af
cmp eax, 0x9d4615
je 0x42103c
cmp eax, 0x79391b8
jne 0x4217a6
mov edx, dword [0x465fb8]
mov ecx, dword [0x465fb4]
mov edi, 0x9d4615
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, 0xdb51fd54
jmp 0x42002f
cmp eax, 0x9246d187
jg 0x4208d2
cmp eax, 0x81c33099
je 0x42107d
cmp eax, 0x8ecee27d
jne 0x420040
cmp byte [esi + 0x2a], 0
mov eax, 0x4b7059e2
mov ecx, 0xcbfec62b
cmovne eax, ecx
jmp 0x420040
cmp eax, 0x4af97985
jg 0x4208f2
cmp eax, 0x44532aca
je 0x4210b6
cmp eax, 0x48323dca
jne 0x420040
mov eax, 0x73b1e0fa
jmp 0x420040
cmp eax, 0xc3a86a52
jg 0x420926
cmp eax, 0xc0e0f7ee
je 0x4210c0
cmp eax, 0xc0f238bb
jne 0x420040
mov eax, 0x665eeeaa
jmp 0x420040
cmp eax, 0x373eb080
jg 0x420946
cmp eax, 0x26ae6adc
je 0x4210f3
cmp eax, 0x2f1ea3d8
jne 0x420040
mov eax, dword [0x465fb8]
mov edi, 0x8ecee27d
mov ebx, 0x44532aca
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x44532aca
jmp 0x42150e
cmp eax, 0xa41646b3
je 0x420001
cmp eax, 0xa45243a6
jne 0x420040
mov edx, dword [0x465fb8]
mov ecx, dword [0x465fb4]
mov ebx, 0xc0f238bb
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, 0x4af97986
cmovne edx, ebx
test edi, eax
mov eax, edx
cmove eax, ebx
cmp ecx, 0xa
mov ecx, dword [esi + 0x18]
cmovge eax, edx
movzx edx, byte [ebp + 0x18]
mov ecx, dword [ecx]
mov byte [esi + 0x2b], dl
mov dword [esi + 0x74], ecx
jmp 0x420040
cmp eax, 0x5c923e1f
je 0x421196
cmp eax, 0x5c94eea7
jne 0x420040
lea eax, [ebp + 0xc]
vmovsd xmm0, qword [eax]
mov eax, 0xa536d689
vmovsd qword [esi + 0x7c], xmm0
jmp 0x420040
cmp eax, 0xe77804ed
je 0x4211a0
cmp eax, 0xea6d7bad
jne 0x420040
mov eax, 0x3acb94d9
jmp 0x420040
cmp eax, 0x137deacd
je 0x4211dc
cmp eax, 0x13e95537
jne 0x420040
mov eax, 0xc0e0f7ee
jmp 0x420040
cmp eax, 0x9673f56d
je 0x421201
cmp eax, 0x9cd8c73f
jne 0x420040
mov eax, dword [0x465fb8]
mov edi, 0xa536d689
mov ebx, 0x5c94eea7
lea ecx, [eax - 1]
imul ecx, eax
mov eax, 0x5c94eea7
jmp 0x421403
cmp eax, 0x4b7059e2
je 0x421223
cmp eax, 0x4b77d49f
jne 0x420040
mov edx, dword [0x465fb8]
mov ecx, dword [0x465fb4]
mov edi, 0x4af97986
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, 0xa45243a6
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
mov ecx, dword [esi + 0x30]
cmovge eax, edi
jmp 0x420040
cmp eax, 0xcbfec62b
je 0x4212c7
cmp eax, 0xcf86e5f6
jne 0x420040
mov eax, 0x9673f56d
jmp 0x420040
cmp eax, 0x3984fe6b
je 0x4212fa
cmp eax, 0x3acb94d9
jne 0x420040
mov eax, dword [esi + 0x38]
mov dword [esi + 0x84], eax
mov eax, dword [0x4663b0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
cmp dword [0x4663ac], 0xa
setge cl
mov edx, ecx
or cl, al
xor dl, al
xor cl, 1
mov eax, 0x56c65718
or cl, dl
mov ecx, 0xe3839041
mov edx, 0x90b7987a
cmovne eax, ecx
mov ecx, 0x56c65718
cmovne ecx, edx
mov edx, 0xdb306a50
nop word cs:[eax + eax]
cmp edx, 0xdb306a4f
jle 0x420800
cmp edx, 0xdb306a50
je 0x420815
cmp edx, 0xe3839041
je 0x420819
cmp edx, 0x56c65718
jne 0x4207d0
mov edx, dword [esi + 0x84]
mov edx, 0x90b7987a
jmp 0x4207d0
cmp edx, 0x90b7987a
je 0x420820
cmp edx, 0xa5860723
jne 0x4207d0
jmp 0x421340
mov edx, ecx
jmp 0x4207d0
mov edx, 0xa5860723
jmp 0x4207d0
mov edx, dword [esi + 0x84]
mov edx, dword [edx]
mov dword [esi], edx
mov edx, eax
jmp 0x4207d0
cmp eax, 0xb59786fd
je 0x421356
cmp eax, 0xb8635b96
jne 0x420040
mov eax, dword [0x465fb8]
mov edi, 0xf091b408
mov ebx, 0xfdc1ebef
lea ecx, [eax - 1]
imul ecx, eax
mov eax, 0xfdc1ebef
jmp 0x421403
cmp eax, 0x73b1e0fa
je 0x421360
cmp eax, 0x7b2f11d5
jne 0x420040
cmp byte [esi + 0x29], 0
mov eax, 0x594700d5
mov ecx, 0xaeb10b84
cmovne eax, ecx
jmp 0x420040
cmp eax, 0xf64e66a6
je 0x42136d
cmp eax, 0xf765dca5
jne 0x420040
mov eax, 0x6c9779a9
jmp 0x420040
cmp eax, 0xc3104c5
je 0x421380
cmp eax, 0x117f1734
jne 0x420040
mov eax, dword [esi + 0x2c]
mov eax, 0x73b1e0fa
jmp 0x420040
cmp eax, 0x9246d188
je 0x4213c7
cmp eax, 0x95497d85
jne 0x420040
mov eax, 0xfdb2f617
jmp 0x420040
cmp eax, 0x4af97986
je 0x4213d9
cmp eax, 0x4b55c0cd
jne 0x420040
mov eax, dword [esi + 0x50]
mov ecx, dword [esi + 0x54]
cmp eax, 1
mov eax, 0x3c910405
sbb ecx, 0
mov ecx, 0xcbfec62b
cmovl eax, ecx
jmp 0x420040
cmp eax, 0xc3a86a53
je 0x4213e6
cmp eax, 0xc7824b45
jne 0x420040
mov eax, 0xb8635b96
jmp 0x420040
cmp eax, 0x373eb081
je 0x421410
cmp eax, 0x37ae0a0b
jne 0x420040
movzx eax, byte [esi + 0x28]
mov byte [esi + 0x12], al
mov eax, dword [esi + 0x5c]
mov dword [esi + 0x24], eax
mov eax, dword [esi + 0x38]
mov dword [esi + 0x84], eax
mov eax, dword [0x4663b0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
sete cl
cmp dword [0x4663ac], 0xa
setge dl
setl ah
or dl, al
xor ah, cl
mov ecx, 0xe3839041
xor dl, 1
or dl, ah
mov eax, 0x56c65718
mov edx, 0x90b7987a
cmovne eax, ecx
mov ecx, 0x56c65718
cmovne ecx, edx
mov edx, 0xdb306a50
nop
cmp edx, 0xdb306a4f
jle 0x4209f0
cmp edx, 0xdb306a50
je 0x420a05
cmp edx, 0xe3839041
je 0x420a09
cmp edx, 0x56c65718
jne 0x4209c0
mov edx, dword [esi + 0x84]
mov edx, 0x90b7987a
jmp 0x4209c0
cmp edx, 0x90b7987a
je 0x420a10
cmp edx, 0xa5860723
jne 0x4209c0
jmp 0x421444
mov edx, ecx
jmp 0x4209c0
mov edx, 0xa5860723
jmp 0x4209c0
mov edx, dword [esi + 0x84]
mov edx, dword [edx]
mov dword [esi], edx
mov edx, eax
jmp 0x4209c0
movzx eax, byte [esi + 0x12]
mov ebx, 0xa300177a
mov edi, 0x5c94eea7
and al, 1
movzx eax, al
mov dword [esi + 0x48], eax
mov eax, dword [0x465fb8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x5c94eea7
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmove eax, ebx
cmp dword [0x465fb4], 0xa
setl dl
cmovge eax, edi
mov edi, dword [ebp + 0x14]
xor dl, cl
lea edx, [ebp + 0xc]
movzx ecx, byte [ebp + 0x18]
vmovsd xmm0, qword [edx]
cmovne eax, ebx
mov dword [esi + 0x4c], edi
mov byte [esi + 0x13], cl
vmovsd qword [esi + 0x7c], xmm0
jmp 0x420040
mov edx, dword [0x465fb8]
mov ecx, dword [0x465fb4]
mov edi, 0xb3a68153
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, 0xe77804ed
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
mov ecx, dword [esi + 0x1c]
cmovge eax, edi
jmp 0x420040
mov dword [esi], ecx
mov ecx, dword [esi]
push eax
call fcn.004362f0
mov eax, dword [esi]
mov ecx, dword [esi + 0x1c]
call section..text
mov eax, 0xe77804ed
jmp 0x420040
mov edx, dword [0x4663c8]
mov ecx, dword [ebp + 0x14]
mov ebx, 0x58def9ef
lea edi, [edx + 1]
mov eax, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x24]
imul edi, edx
not edi
or edi, 0xfffffffe
cmp edi, 0xffffffff
mov edi, 0x3b2c0e7f
sete dl
cmp dword [0x4663c4], 0xa
setl dh
or dh, dl
mov edx, 0x594bb81
cmovne edx, edi
mov edi, 0x594bb81
cmovne edi, ebx
mov ebx, 0x63eb2e51
nop word cs:[eax + eax]
cmp ebx, 0x58def9ee
jle 0x420b70
cmp ebx, 0x58def9ef
je 0x420b85
cmp ebx, 0x63eb2e51
je 0x420b89
cmp ebx, 0x6004b7eb
jne 0x420b40
mov ebx, edi
jmp 0x420b40
cmp ebx, 0x594bb81
je 0x420b90
cmp ebx, 0x3b2c0e7f
jne 0x420b40
jmp 0x421462
mov ebx, edx
jmp 0x420b40
mov ebx, 0x6004b7eb
jmp 0x420b40
mov ebx, 0x58def9ef
jmp 0x420b40
lea ecx, [ebp + 0xc]
mov eax, dword [esi + 0x3c]
vmovsd xmm0, qword [ecx]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x3c]
mov edx, dword [esi + 0x24]
mov edi, dword [esi + 0x74]
movsx ebx, byte [esi + 0x2b]
sub esp, 0x18
vmovsd xmm0, qword [ecx]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], ebx
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.004261e0
add esp, 0x18
mov eax, dword [esi + 0x30]
vmovsd xmm0, qword [eax]
lea eax, [ebp + 0xc]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x30]
mov eax, dword [esi + 0x18]
mov dword [eax], 0
mov eax, 0xc3a86a53
jmp 0x420040
mov ecx, dword [esi + 0x68]
mov edx, dword [0x4663c8]
lea edi, [edx + 1]
mov eax, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x24]
imul edi, edx
mov edx, edi
xor edx, 0xfffffffe
test edx, edi
mov edi, 0x3b2c0e7f
setne dl
cmp dword [0x4663c4], 0xa
setge dh
mov bl, dh
or dh, dl
xor bl, dl
xor dh, 1
or dh, bl
mov edx, 0x594bb81
mov ebx, 0x58def9ef
cmovne edx, edi
mov edi, 0x594bb81
cmovne edi, ebx
mov ebx, 0x63eb2e51
cmp ebx, 0x58def9ee
jle 0x420c80
cmp ebx, 0x58def9ef
je 0x420c95
cmp ebx, 0x63eb2e51
je 0x420c99
cmp ebx, 0x6004b7eb
jne 0x420c50
mov ebx, edi
jmp 0x420c50
cmp ebx, 0x594bb81
je 0x420ca0
cmp ebx, 0x3b2c0e7f
jne 0x420c50
jmp 0x421476
mov ebx, edx
jmp 0x420c50
mov ebx, 0x6004b7eb
jmp 0x420c50
mov ebx, 0x58def9ef
jmp 0x420c50
mov eax, dword [esi + 0xc]
mov ecx, dword [0x466408]
mov edi, 0x7c3215e5
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp dword [0x466404], 0xa
setl dl
or dl, cl
mov ecx, 0x15a3fdc9
mov edx, 0xd2782493
cmovne ecx, edx
mov edx, 0x15a3fdc9
cmovne edx, edi
mov edi, 0x1ec5592b
nop dword [eax]
cmp edi, 0x15a3fdc8
jle 0x420d20
cmp edi, 0x15a3fdc9
je 0x420d3b
cmp edi, 0x1ec5592b
je 0x420d42
cmp edi, 0x7c3215e5
jne 0x420cf0
mov edi, ecx
jmp 0x420cf0
cmp edi, 0x8f95fe6c
je 0x4214b4
cmp edi, 0xd2782493
jne 0x420cf0
mov edi, 0x8f95fe6c
jmp 0x420cf0
mov edi, 0x7c3215e5
jmp 0x420cf0
mov edi, edx
jmp 0x420cf0
mov eax, 0xfcc8c2fe
jmp 0x420040
push dword [esi + 0x14]
call fcn.00424f70
add esp, 4
mov ecx, dword [esi + 0x14]
mov edi, eax
call fcn.00419e00
mov eax, dword [esi + 0x14]
mov eax, dword [esi + 0x20]
mov dword [eax], edi
mov edi, 0xa13f5b85
mov edx, dword [0x465fb8]
mov ecx, dword [0x465fb4]
jmp 0x420fea
mov eax, 0x3984fe6b
jmp 0x420040
mov eax, 0x7ce6c5d6
jmp 0x420040
mov eax, dword [0x465fb8]
mov ebx, 0xc07e024a
mov edi, 0x5d36f067
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x5d36f067
jmp 0x42173c
mov eax, 0x3b0848f7
jmp 0x420040
mov eax, dword [esi + 0x24]
mov eax, dword [eax]
mov eax, dword [eax + 0x24]
mov ecx, dword [esi + 0x24]
mov edx, dword [esi + 0x48]
movsx edi, byte [esi + 0x13]
mov ebx, dword [esi + 0x4c]
sub esp, 0x18
vmovsd xmm0, qword [esi + 0x7c]
vmovsd qword [esp + 4], xmm0
mov dword [esp + 0x14], edx
mov edx, dword [ebp + 8]
mov dword [esp + 0x10], edi
mov dword [esp + 0xc], ebx
mov dword [esp], edx
call eax
mov edx, dword [0x465fb8]
mov ecx, dword [0x465fb4]
mov edi, 0x9d4615
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, 0xc7824b45
jmp 0x42002f
mov eax, 0xea6d7bad
jmp 0x420040
mov dword [esi], eax
mov eax, dword [esi]
mov eax, 0x373eb081
jmp 0x420040
mov eax, dword [0x465fb8]
mov ebx, 0xa41646b3
mov edi, 0xb59786fd
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0xb59786fd
jmp 0x421744
mov eax, dword [ebp + 0x14]
mov dword [esi + 0x68], eax
mov eax, 0xeaaa195f
jmp 0x420040
push eax
mov eax, esp
mov dword [esi + 0x20], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x14], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0xc], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x1c], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x2c], eax
push eax
mov eax, esp
mov dword [esi + 0x18], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x30], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x3c], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x34], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x40], eax
sub esp, 8
mov eax, esp
mov dword [esi + 0x44], eax
movzx eax, byte [ebp + 0x1c]
mov byte [esi + 0x28], al
mov eax, 0x37ae0a0b
jmp 0x420040
mov eax, dword [esi + 0x18]
mov edi, 0xe48dd425
mov dword [eax], 0
mov edx, dword [0x465fb8]
mov ecx, dword [0x465fb4]
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, 0xf64e66a6
jmp 0x42169f
mov edi, dword [0x465fb8]
mov ecx, 0x5c923e1f
mov dword [esi + 4], edx
lea eax, [edi + 1]
imul eax, edi
mov edi, dword [0x465fb4]
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete bl
cmp edi, 0xa
setl bh
xor bh, bl
mov ebx, 0x5d36f067
cmovne ebx, ecx
cmp eax, 0xffffffff
mov eax, ebx
cmove eax, ecx
mov ecx, dword [esi + 0x60]
cmp edi, 0xa
cmovge eax, ebx
mov dword [esi], ecx
mov ecx, dword [esi + 4]
mov edx, dword [esi]
mov dword [esi + 0x50], edx
mov dword [esi + 0x54], ecx
jmp 0x420040
mov edi, dword [esi + 0x14]
mov eax, 0xa2ddd501
nop word [eax + eax]
cmp eax, 0x53dcb1f9
je 0x42152b
cmp eax, 0xa2ddd501
jne 0x420f80
mov eax, dword [ebp + 0x14]
mov ecx, edi
push dword [eax + 0x30]
call fcn.00437eb0
mov eax, 0x53dcb1f9
jmp 0x420f80
mov edx, dword [0x465fb8]
mov ecx, dword [0x465fb4]
mov edi, 0xa2d7dd69
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, 0xf765dca5
jmp 0x42002f
mov edx, dword [0x465fb8]
mov ecx, dword [0x465fb4]
mov edi, 0x1b63161e
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, 0x1f816b8d
jmp 0x42169f
mov eax, dword [esi + 0xc]
mov ecx, 0xbbceff36
nop word cs:[eax + eax]
cmp ecx, 0xbbceff36
je 0x421035
cmp ecx, 0xb393d189
jne 0x421020
jmp 0x421535
mov ecx, 0xb393d189
jmp 0x421020
mov eax, dword [esi + 0x24]
mov eax, dword [eax]
mov eax, dword [eax + 0x24]
mov ecx, dword [esi + 0x24]
mov edx, dword [esi + 0x48]
movsx edi, byte [esi + 0x13]
mov ebx, dword [esi + 0x4c]
sub esp, 0x18
vmovsd xmm0, qword [esi + 0x7c]
vmovsd qword [esp + 4], xmm0
mov dword [esp + 0x10], edi
mov edi, dword [ebp + 8]
mov dword [esp + 0x14], edx
mov dword [esp + 0xc], ebx
mov dword [esp], edi
call eax
mov eax, 0xdb51fd54
jmp 0x420040
mov edi, dword [esi + 0x14]
mov eax, 0xa2ddd501
nop word cs:[eax + eax]
cmp eax, 0x53dcb1f9
je 0x4215f4
cmp eax, 0xa2ddd501
jne 0x421090
mov eax, dword [ebp + 0x14]
mov ecx, edi
push dword [eax + 0x30]
call fcn.00437eb0
mov eax, 0x53dcb1f9
jmp 0x421090
mov eax, 0x2f1ea3d8
jmp 0x420040
mov edx, dword [0x465fb8]
mov ecx, dword [0x465fb4]
mov edi, 0x13e95537
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, 0x48323dca
jmp 0x42002f
mov eax, dword [esi + 0xc]
mov ecx, dword [0x466408]
mov edi, 0x7c3215e5
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp dword [0x466404], 0xa
setl dl
or dl, cl
mov ecx, 0x15a3fdc9
mov edx, 0xd2782493
cmovne ecx, edx
mov edx, 0x15a3fdc9
cmovne edx, edi
mov edi, 0x1ec5592b
nop dword [eax + eax]
cmp edi, 0x15a3fdc8
jle 0x421170
cmp edi, 0x15a3fdc9
je 0x42118b
cmp edi, 0x1ec5592b
je 0x421192
cmp edi, 0x7c3215e5
jne 0x421140
mov edi, ecx
jmp 0x421140
cmp edi, 0x8f95fe6c
je 0x421627
cmp edi, 0xd2782493
jne 0x421140
mov edi, 0x8f95fe6c
jmp 0x421140
mov edi, 0x7c3215e5
jmp 0x421140
mov edi, edx
jmp 0x421140
mov eax, 0x4b55c0cd
jmp 0x420040
mov eax, dword [esi + 0x20]
mov ecx, dword [eax]
push dword [esi + 0x1c]
call fcn.004361a0
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 0x1c]
mov edx, 0xcfb6f366
nop dword [eax + eax]
cmp edx, 0xcfb6f366
je 0x4211d5
cmp edx, 0x7826866e
jne 0x4211c0
jmp 0x42165c
mov edx, 0x7826866e
jmp 0x4211c0
mov eax, dword [esi + 0x20]
mov eax, dword [esi + 0x14]
mov eax, dword [0x465fb8]
mov ebx, 0x81c33099
mov edi, 0x7c184b2b
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x7c184b2b
jmp 0x42173c
mov eax, dword [esi + 0x1c]
mov eax, dword [0x465fb8]
mov edi, 0x7ce6c5d6
mov ebx, 0xa2d7dd69
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0xa2d7dd69
jmp 0x421403
mov edx, dword [0x4663c8]
mov ecx, dword [ebp + 0x14]
mov ebx, 0x58def9ef
lea edi, [edx - 1]
mov eax, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x24]
imul edi, edx
not edi
or edi, 0xfffffffe
cmp edi, 0xffffffff
mov edi, 0x3b2c0e7f
sete dl
cmp dword [0x4663c4], 0xa
setl dh
or dh, dl
mov edx, 0x594bb81
cmovne edx, edi
mov edi, 0x594bb81
cmovne edi, ebx
mov ebx, 0x63eb2e51
nop
cmp ebx, 0x58def9ee
jle 0x4212a0
cmp ebx, 0x58def9ef
je 0x4212b5
cmp ebx, 0x63eb2e51
je 0x4212b9
cmp ebx, 0x6004b7eb
jne 0x421270
mov ebx, edi
jmp 0x421270
cmp ebx, 0x594bb81
je 0x4212c0
cmp ebx, 0x3b2c0e7f
jne 0x421270
jmp 0x4216b5
mov ebx, edx
jmp 0x421270
mov ebx, 0x6004b7eb
jmp 0x421270
mov ebx, 0x58def9ef
jmp 0x421270
mov edx, dword [0x465fb8]
mov ecx, dword [0x465fb4]
mov edi, 0xf64e66a6
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, 0xbb12c58a
jmp 0x42002f
mov edx, dword [0x465fb8]
mov ecx, dword [0x465fb4]
mov edi, 0x26ae6adc
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, 0xf07a59c4
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
mov ecx, dword [esi + 0xc]
cmovge eax, edi
jmp 0x420040
mov eax, dword [esi]
mov ecx, 0x1c0
and eax, ecx
mov dword [esi + 0x70], eax
mov eax, 0x7dff8536
jmp 0x420040
mov eax, 0xa41646b3
jmp 0x420040
mov eax, dword [esi + 0x18]
mov eax, 0x57acfcc8
jmp 0x420040
mov eax, dword [esi + 0x18]
mov dword [eax], 0
mov eax, 0xbb12c58a
jmp 0x420040
mov edi, dword [esi + 0x2c]
mov eax, dword [esi + 0x64]
mov dword [esi + 0x84], eax
mov eax, dword [esi + 0x84]
mov eax, dword [eax]
mov dword [esi], eax
mov eax, 0xd374311d
nop dword [eax + eax]
cmp eax, 0xa98ef0e2
je 0x4216f4
cmp eax, 0xd374311d
jne 0x4213a0
mov eax, dword [esi]
mov eax, dword [eax + 0x18]
mov ecx, dword [esi + 0x84]
push edi
call eax
mov eax, 0xa98ef0e2
jmp 0x4213a0
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0x6c]
mov dword [eax], ecx
mov eax, 0x3acb94d9
jmp 0x420040
mov eax, dword [esi + 0x18]
mov eax, 0xa45243a6
jmp 0x420040
mov eax, dword [esi + 0x34]
mov eax, dword [0x465fb8]
mov edi, 0x373eb081
mov ebx, 0xe572c8ef
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0xe572c8ef
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
jmp 0x42150e
mov eax, dword [esi + 0xc]
mov ecx, 0x6e4d2381
mov dword [esi + 0x84], eax
nop
cmp ecx, 0x1254646d
je 0x421719
cmp ecx, 0x6e4d2381
jne 0x421420
mov eax, dword [esi + 0x84]
mov ecx, 0x1254646d
add eax, 0x10
jmp 0x421420
mov eax, dword [esi]
mov edx, 0x9cd8c73f
mov ecx, eax
xor ecx, 0xffffbfff
test ecx, eax
mov eax, 0x137deacd
cmove eax, edx
jmp 0x420040
mov dword [esi], eax
mov dword [esi + 4], ecx
mov eax, dword [esi]
mov eax, dword [esi + 4]
mov eax, 0xc07e024a
jmp 0x420040
mov dword [esi], eax
mov dword [esi + 4], ecx
mov edx, 0x6e4d2381
mov eax, dword [esi]
mov ecx, dword [esi + 4]
mov ecx, dword [esi + 0xc]
mov dword [esi + 0x84], ecx
nop
cmp edx, 0x1254646d
je 0x421761
cmp edx, 0x6e4d2381
jne 0x421490
mov ecx, dword [esi + 0x84]
mov edx, 0x1254646d
add ecx, 0x10
jmp 0x421490
mov dword [esi], eax
mov ecx, dword [esi]
sub esp, 4
movzx eax, byte [esi + 0x84]
mov byte [esp], al
call fcn.0040a310
mov ecx, dword [esi]
push 0x459ea0
call fcn.0040eff0
mov ecx, dword [esi]
call fcn.0040f1e0
mov eax, dword [esi]
movzx ecx, byte [esi + 0x12]
mov edi, 0x7b2f11d5
mov ebx, 0x26ae6adc
mov eax, ecx
xor al, 0xfe
test al, cl
mov eax, dword [0x465fb8]
setne byte [esi + 0x29]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, 0x26ae6adc
sete cl
cmove eax, edi
cmp dword [0x465fb4], 0xa
setl dl
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
jmp 0x420040
mov eax, 0x81c33099
jmp 0x420040
mov dword [esi], eax
mov ecx, dword [esi]
call fcn.0040f2e0
lea edx, [ebp + 0xc]
mov ecx, dword [esi + 0x40]
vmovsd xmm0, qword [edx]
vmovsd qword [ecx], xmm0
mov ecx, dword [esi + 0x34]
mov edx, dword [esi + 0x40]
mov edi, dword [esi + 0x24]
mov ebx, dword [esi + 0x78]
sub esp, 0x18
vmovsd xmm0, qword [edx]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 4], ecx
mov dword [esp], edi
call fcn.004265c0
add esp, 0x18
mov eax, dword [esi + 0x34]
mov ecx, dword [ebp + 0x14]
mov edi, dword [eax]
mov ebx, dword [eax + 4]
lea eax, [ebp + 0xc]
mov dword [eax + 4], ebx
mov dword [eax], edi
mov eax, dword [esi + 0x34]
push 0
push 0
call fcn.004107f0
mov eax, dword [esi + 0x18]
mov eax, dword [eax]
mov ecx, dword [esi + 0x44]
mov dword [ecx + 4], ebx
mov dword [ecx], edi
mov ecx, dword [esi + 0x44]
mov edx, dword [esi + 0x24]
sub esp, 0x18
vmovsd xmm0, qword [ecx]
movsx edi, byte [ebp + 0x18]
mov ecx, dword [ebp + 8]
vmovsd qword [esp + 8], xmm0
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edi
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.004261e0
add esp, 0x18
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0xc]
call section..text
mov eax, dword [esi + 0xc]
mov eax, dword [esi + 0x20]
mov eax, 0x3b0848f7
jmp 0x420040
mov edx, dword [0x465fb8]
mov ecx, dword [0x465fb4]
mov edi, 0x7c184b2b
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, 0x1a81c919
jmp 0x42002f
mov dword [esi], eax
mov ecx, dword [esi]
sub esp, 4
movzx eax, byte [esi + 0x84]
mov byte [esp], al
call fcn.0040a310
mov ecx, dword [esi]
push 0x459ea0
call fcn.0040eff0
mov ecx, dword [esi]
call fcn.0040f1e0
mov eax, dword [esi]
mov eax, 0xf07a59c4
jmp 0x420040
mov dword [esi], ecx
mov ecx, dword [esi]
push eax
call fcn.004362f0
mov eax, dword [esi]
mov ecx, dword [esi + 0x1c]
call section..text
mov edx, dword [0x465fb8]
mov ecx, dword [0x465fb4]
mov edi, 0xcf86e5f6
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, 0xb3a68153
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x420040
mov dword [esi], eax
mov dword [esi + 4], ecx
mov edx, 0x6e4d2381
mov eax, dword [esi]
mov ecx, dword [esi + 4]
mov ecx, dword [esi + 0xc]
mov dword [esi + 0x84], ecx
nop dword [eax]
cmp edx, 0x1254646d
je 0x421775
cmp edx, 0x6e4d2381
jne 0x4216d0
mov ecx, dword [esi + 0x84]
mov edx, 0x1254646d
add ecx, 0x10
jmp 0x4216d0
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 0x2c]
mov edx, 0xcfb6f366
nop
cmp edx, 0xcfb6f366
je 0x421712
cmp edx, 0x7826866e
jne 0x421700
jmp 0x421788
mov edx, 0x7826866e
jmp 0x421700
mov dword [esi], eax
mov ebx, 0x95497d85
mov edi, 0xe572c8ef
mov eax, dword [esi]
mov eax, dword [eax]
mov dword [esi + 0x78], eax
mov eax, dword [0x465fb8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0xe572c8ef
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmove eax, ebx
cmp dword [0x465fb4], 0xa
setl dl
cmovge eax, edi
xor dl, cl
cmovne eax, ebx
jmp 0x420040
mov dword [esi], ecx
mov ecx, dword [esi]
cmp dword [ecx], eax
mov eax, 0x4176ffb6
setae byte [esi + 0x2a]
jmp 0x420040
mov dword [esi], ecx
mov ecx, dword [esi]
sub eax, dword [ecx]
mov dword [esi + 0x6c], eax
mov eax, 0x9246d188
jmp 0x420040
mov dword [esi], ecx
mov ecx, dword [esi]
push eax
call fcn.004362f0
mov eax, dword [esi]
mov ecx, dword [esi + 0x2c]
call section..text
mov eax, 0x117f1734
jmp 0x420040
cmp eax, 0xfe31d53c
jne 0x420040
mov ecx, dword [esi + 0x88]
xor ecx, ebp
call fcn.00438f60
mov eax, dword [ebp + 8]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x18