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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x118
mov eax, dword [0x47e2c0]
mov ecx, 0x59c90f66
mov esi, esp
xor eax, ebp
mov dword [esi + 0x110], eax
jmp 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0x9dd6ab10
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0xc15f5617
cmovne edi, ebx
test edx, ecx
mov ecx, edi
cmove ecx, ebx
cmp eax, 0xa
cmovge ecx, edi
nop word cs:[eax + eax]
cmp ecx, 0xf4377d47
jg 0x406360
cmp ecx, 0xb8666756
jle 0x4063f0
cmp ecx, 0xd96cf16e
jle 0x4064b5
cmp ecx, 0xe65b1609
jle 0x40661b
cmp ecx, 0xeec22e66
jle 0x4068c1
cmp ecx, 0xf0a6a9c6
jle 0x406f26
cmp ecx, 0xf0a6a9c7
je 0x4079e9
cmp ecx, 0xf273352b
je 0x4079f6
cmp ecx, 0xf290c03a
jne 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0xad984ad0
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x8efffeb5
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
cmovge ecx, edx
xor eax, eax
cmp eax, dword [esi + 0xa0]
mov eax, 0
sbb eax, dword [esi + 0xa4]
setl byte [esi + 0x3d]
jmp 0x406290
cmp ecx, 0x397e17a0
jle 0x406460
cmp ecx, 0x59860295
jg 0x4064fb
cmp ecx, 0x44fbb875
jle 0x406699
cmp ecx, 0x4eff618c
jg 0x4068ef
cmp ecx, 0x48e0eedf
jle 0x406f54
cmp ecx, 0x4bf77829
je 0x407a00
cmp ecx, 0x4e95fad8
jne 0x4086ce
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0x1048028c
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0xa099cb1c
jmp 0x408181
cmp ecx, 0x9baf04e7
jg 0x40656d
cmp ecx, 0x94a89ca5
jg 0x4066df
cmp ecx, 0x8c1903a4
jg 0x40693a
cmp ecx, 0x86f3cbcc
jg 0x406fc7
cmp ecx, 0x853f89ae
je 0x407a15
cmp ecx, 0x869d0f19
jne 0x406290
mov eax, dword [esi + 0x14]
mov ecx, 0xc985d7c7
mov eax, dword [eax]
mov dword [esi + 0x94], eax
mov eax, dword [esi + 0x94]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov dword [esi + 0xf8], eax
jmp 0x406290
cmp ecx, 0x16a82146
jg 0x4065d5
cmp ecx, 0x9073343
jg 0x406735
cmp ecx, 0x5116d03
jg 0x406a02
cmp ecx, 0xfa82a523
jg 0x40709a
cmp ecx, 0xf4377d48
je 0x407a1f
cmp ecx, 0xf7b65178
jne 0x406290
mov eax, dword [esi + 0x18]
mov ecx, 0xc1e08179
jmp 0x406290
cmp ecx, 0xcc0d5a70
jg 0x40678c
cmp ecx, 0xc1e08178
jg 0x406a58
cmp ecx, 0xbb95c1d5
jg 0x4070bc
cmp ecx, 0xb8666757
je 0x407b52
cmp ecx, 0xbb5c804f
jne 0x406290
mov ecx, 0x201b31ec
jmp 0x406290
cmp ecx, 0x6e423090
jg 0x4067dd
cmp ecx, 0x65818af2
jg 0x406a92
cmp ecx, 0x5f056d14
jg 0x407102
cmp ecx, 0x59860296
je 0x407b5c
cmp ecx, 0x59c90f66
jne 0x406290
push eax
mov eax, esp
mov dword [esi + 0x14], eax
push eax
mov eax, esp
mov dword [esi + 4], eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x24], eax
push eax
push eax
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x18], eax
push eax
push eax
mov eax, esp
mov dword [esi + 0x40], eax
mov ecx, 0x7b6ad5e3
jmp 0x406290
cmp ecx, 0xa930f2c9
jg 0x406817
cmp ecx, 0xa099cb1b
jg 0x406c1f
cmp ecx, 0x9dd6ab0f
jg 0x407172
cmp ecx, 0x9baf04e8
je 0x407b74
cmp ecx, 0x9c58deea
jne 0x406290
mov eax, dword [esi + 0xc0]
mov ecx, dword [esi + 0xc4]
xor ecx, dword [esi + 0x10c]
xor eax, dword [esi + 0x108]
or eax, ecx
mov ecx, 0x59860296
mov eax, 0xb0875468
cmove ecx, eax
jmp 0x406290
cmp ecx, 0x29388967
jg 0x40685f
cmp ecx, 0x1f444505
jg 0x406c69
cmp ecx, 0x1b00c9ca
jg 0x407194
cmp ecx, 0x16a82147
je 0x407b9a
cmp ecx, 0x17bf1a6e
jne 0x406290
mov ecx, 0x869d0f19
jmp 0x406290
cmp ecx, 0xdde4cf41
jg 0x406ca5
cmp ecx, 0xdc34a73a
jg 0x4071b6
cmp ecx, 0xd96cf16f
je 0x407ba4
cmp ecx, 0xdb5397c2
jne 0x406290
mov eax, dword [esi + 0x44]
mov ebx, 0xf273352b
mov edi, 0xd3097f18
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x4a761353
and eax, 4
and ecx, 0xb589ecac
or edx, ecx
mov ecx, dword [esi + 4]
xor edx, 0xb589eca8
or eax, edx
mov dword [ecx], eax
mov eax, dword [0x4803d0]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0xd3097f18
jmp 0x408080
cmp ecx, 0x41123497
jg 0x406d15
cmp ecx, 0x3d2039c6
jg 0x4071ed
cmp ecx, 0x397e17a1
je 0x407bae
cmp ecx, 0x3c5b0600
jne 0x406290
cmp byte [esi + 0x3b], 0
mov ecx, 0xb0875468
mov eax, 0x1b00c9cb
cmovne ecx, eax
jmp 0x406290
cmp ecx, 0x987222a7
jg 0x406d5f
cmp ecx, 0x97012538
jg 0x407212
cmp ecx, 0x94a89ca6
je 0x407bd4
cmp ecx, 0x955dc64c
jne 0x406290
mov eax, dword [0x4803d0]
mov edi, 0x35a5dbc1
mov ebx, 0xaeec36df
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0xaeec36df
jmp 0x4085de
cmp ecx, 0x1048028b
jg 0x406d98
cmp ecx, 0xec14927
jg 0x407234
cmp ecx, 0x9073344
je 0x407bea
cmp ecx, 0xcc26fa8
jne 0x406290
mov eax, dword [0x4803d0]
mov edi, 0x62694f52
mov ebx, 0x3e6a9b51
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x3e6a9b51
jmp 0x4085de
cmp ecx, 0xd2b84548
jg 0x406dee
cmp ecx, 0xcf59feef
jg 0x407256
cmp ecx, 0xcc0d5a71
je 0x407bf4
cmp ecx, 0xce3b37c3
jne 0x406290
mov eax, dword [esi + 0x14]
mov ecx, 0x79a055af
mov eax, dword [eax]
mov dword [esi + 0x88], eax
mov eax, dword [esi + 0x88]
mov dword [esi + 0xdc], eax
jmp 0x406290
cmp ecx, 0x74aad181
jg 0x406e49
cmp ecx, 0x71b9cf07
jg 0x407278
cmp ecx, 0x6e423091
je 0x407c0a
cmp ecx, 0x70132daa
jne 0x406290
mov ecx, 0x436e4ee3
jmp 0x406290
cmp ecx, 0xaeec36de
jg 0x406e7d
cmp ecx, 0xad984acf
jg 0x4072c2
cmp ecx, 0xa930f2ca
je 0x407c56
cmp ecx, 0xab401bff
jne 0x406290
mov eax, dword [esi + 0xf0]
mov ecx, 0xdd4dd6e7
mov eax, dword [eax]
mov dword [esi + 0xf4], eax
jmp 0x406290
cmp ecx, 0x3269087b
jg 0x406eb6
cmp ecx, 0x2d42b133
jg 0x40730d
cmp ecx, 0x29388968
je 0x407c88
cmp ecx, 0x2996a64b
jne 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0x438a30ab
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0xfa82a524
jmp 0x406272
cmp ecx, 0xed6c287e
jg 0x407337
cmp ecx, 0xe65b160a
je 0x407caf
cmp ecx, 0xec205e62
jne 0x406290
mov ecx, 0xb0875468
jmp 0x406290
cmp ecx, 0x4fd4bc6c
jg 0x4074aa
cmp ecx, 0x4eff618d
je 0x407cc7
cmp ecx, 0x4f2480a8
jne 0x406290
mov eax, dword [0x4803d0]
mov ebx, 0x8cce0019
mov edi, 0xc7adb59c
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0xc7adb59c
jmp 0x408080
cmp ecx, 0x8efffeb4
jg 0x4074f3
cmp ecx, 0x8c1903a5
je 0x407cd4
cmp ecx, 0x8cce0019
jne 0x406290
mov eax, dword [esi + 0x50]
mov ecx, dword [esi + 0x74]
mov edx, dword [0x4803c8]
mov ebx, 0xeb6ff63
lea edi, [edx + 1]
imul edi, edx
mov edx, edi
xor edx, 0xfffffffe
test edx, edi
mov edi, 0xf1e872f4
sete dl
cmp dword [0x4803c4], 0xa
setl dh
or dh, dl
mov edx, 0xf1e8d4c3
cmovne edx, edi
mov edi, 0xf1e8d4c3
cmovne edi, ebx
mov ebx, 0xfeccf782
nop word cs:[eax + eax]
cmp ebx, 0xfeccf781
jle 0x4069e0
cmp ebx, 0xfeccf782
je 0x4069f7
cmp ebx, 0x456bdec2
je 0x407d8a
cmp ebx, 0xeb6ff63
jne 0x4069b0
mov ebx, edx
jmp 0x4069b0
cmp ebx, 0xf1e872f4
je 0x4069fb
cmp ebx, 0xf1e8d4c3
jne 0x4069b0
mov ebx, 0xeb6ff63
jmp 0x4069b0
mov ebx, edi
jmp 0x4069b0
mov ebx, 0x456bdec2
jmp 0x4069b0
cmp ecx, 0x73c2756
jg 0x40753e
cmp ecx, 0x5116d04
je 0x407ded
cmp ecx, 0x6cbad59
jne 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0x8a43329
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x47e6b699
jmp 0x406272
cmp ecx, 0xc7adb59b
jg 0x40756c
cmp ecx, 0xc1e08179
je 0x407dfa
cmp ecx, 0xc33b9aeb
jne 0x406290
cmp byte [esi + 0x3d], 0
mov ecx, 0xdde4cf42
mov eax, 0xce3b37c3
cmovne ecx, eax
jmp 0x406290
cmp ecx, 0x6b7d115f
jg 0x4075bc
cmp ecx, 0x65818af3
je 0x407e4d
cmp ecx, 0x68e7e189
jne 0x406290
mov eax, dword [esi + 0xd4]
mov edi, 0x363b40f5
mov ebx, 0x5f2dec0
mov eax, dword [eax]
mov dword [esi + 0x20], eax
mov ecx, dword [esi + 0x64]
mov eax, dword [0x4803c0]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
setne al
cmp dword [0x4803bc], 0xa
setge dl
mov ah, dl
or dl, al
xor ah, al
xor dl, 1
or dl, ah
mov edx, 0x1c3a6a4d
mov eax, 0xb2f12282
cmovne edx, eax
mov eax, 0x1c3a6a4d
mov dword [esi + 0x1c], edx
mov edx, 0x2587090
cmovne eax, edx
mov edx, 0x5e31cac3
cmovne edi, edx
mov edx, 0x363b40f5
mov dword [esi + 0x2c], edi
mov edi, 0xa63181d
cmovne edx, edi
jmp 0x406b40
mov ebx, 0xa63181d
nop word cs:[eax + eax]
mov edi, ebx
cmp ebx, 0xab4f5b7
jle 0x406b70
cmp edi, 0x363b40f4
jg 0x406ba0
mov ebx, eax
cmp edi, 0xab4f5b8
je 0x406b40
mov ebx, edi
cmp edi, 0x1c3a6a4d
jne 0x406b40
mov ebx, 0x2587090
jmp 0x406b40
cmp edi, 0x5f2debf
jle 0x406bb9
mov ebx, edx
cmp edi, 0x5f2dec0
je 0x406b40
mov ebx, edi
cmp edi, 0xa63181d
jne 0x406b40
mov ebx, dword [esi + 0x2c]
jmp 0x406b40
cmp edi, 0x363b40f5
je 0x406b2f
mov ebx, edi
cmp edi, 0x5e31cac3
jne 0x406b40
mov ebx, 0xab4f5b8
jmp 0x406b40
cmp edi, 0x2587090
jne 0x406bda
mov edi, dword [esi + 0x20]
mov ebx, dword [ecx + edi + 0x20]
mov edi, dword [ecx + edi + 0x24]
mov dword [esi + 0x28], ebx
mov ebx, dword [esi + 0x1c]
mov dword [esi + 0x48], edi
jmp 0x406b40
mov ebx, edi
cmp edi, 0xb2f12282
jne 0x406b40
mov eax, dword [esi + 0x48]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x28]
mov dword [esi + 8], eax
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
mov dword [esi + 0xa8], ecx
mov dword [esi + 0xac], eax
mov ecx, 0x74aad182
mov eax, dword [esi + 0x24]
vmovsd xmm0, qword [eax]
vmovsd qword [esi + 0x100], xmm0
jmp 0x406290
cmp ecx, 0xa41cc753
jg 0x407606
cmp ecx, 0xa099cb1c
je 0x407e80
cmp ecx, 0xa22eb3cf
jne 0x406290
mov eax, dword [0x4803d0]
mov edi, 0x436e4ee3
mov ebx, 0x70132daa
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x70132daa
jmp 0x4085de
cmp ecx, 0x256a6da7
jg 0x40763c
cmp ecx, 0x1f444506
je 0x406245
cmp ecx, 0x201b31ec
jne 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0x44fbb876
lea ecx, [edx - 1]
jmp 0x4072ed
cmp ecx, 0xdfa16aee
jg 0x407702
cmp ecx, 0xdde4cf42
je 0x407e8a
cmp ecx, 0xdf2825da
jne 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0x9776b152
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x37724706
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
mov eax, dword [esi + 4]
cmovge ecx, edx
mov eax, dword [eax]
mov dword [esi + 0x44], eax
jmp 0x406290
cmp ecx, 0x438a30aa
jg 0x40774c
cmp ecx, 0x41123498
je 0x407e94
cmp ecx, 0x436e4ee3
jne 0x406290
mov eax, dword [0x4803d0]
mov ebx, 0x3d2039c7
mov edi, 0x70132daa
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x70132daa
jmp 0x408080
cmp ecx, 0x9a9980c1
jg 0x40777c
cmp ecx, 0x987222a8
je 0x407eba
cmp ecx, 0x997d4fa7
jne 0x406290
mov eax, dword [esi + 4]
mov ecx, 0x73c2757
mov eax, dword [eax]
mov dword [esi + 0xe8], eax
jmp 0x406290
cmp ecx, 0x14123484
jg 0x4077a9
cmp ecx, 0x1048028c
je 0x407ec4
cmp ecx, 0x13eb9c22
jne 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0x1cbf5f26
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x17bf1a6e
jmp 0x406272
cmp ecx, 0xd87a6e36
jg 0x4077cb
cmp ecx, 0xd2b84549
je 0x407eea
cmp ecx, 0xd3097f18
jne 0x406290
mov eax, dword [esi + 0x44]
mov eax, dword [esi + 0x44]
mov eax, dword [esi + 0x44]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x2a25c035
and eax, 4
and ecx, 0xd5da3fca
or edx, ecx
mov ecx, dword [esi + 4]
xor edx, 0xd5da3fce
or eax, edx
mov dword [ecx], eax
mov ecx, 0xdb5397c2
jmp 0x406290
cmp ecx, 0x79a055ae
jg 0x4077f9
cmp ecx, 0x74aad182
je 0x407f42
cmp ecx, 0x774404ca
jne 0x406290
mov eax, dword [esi + 0x4c]
mov ecx, 0x41123498
mov dword [esi + 0x68], eax
jmp 0x406290
cmp ecx, 0xb1e1a7e8
jg 0x4079a2
cmp ecx, 0xaeec36df
je 0x407f94
cmp ecx, 0xb0875468
jne 0x406290
mov eax, dword [esi + 4]
mov ecx, 0x6d5961f5
mov eax, dword [eax]
mov dword [esi + 0x84], eax
jmp 0x406290
cmp ecx, 0x3684767c
jg 0x4079c4
cmp ecx, 0x3269087c
je 0x407fa1
cmp ecx, 0x35a5dbc1
jne 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0xb57d2dfb
lea ecx, [edx - 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0xaeec36df
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
cmovge ecx, edx
cmp dword [esi + 0x7c], 0
sete byte [esi + 0x3b]
jmp 0x406290
cmp ecx, 0xeec22e67
je 0x407fd3
cmp ecx, 0xf0827084
jne 0x406290
mov eax, dword [esi + 0x5c]
mov ecx, 0xe38d1580
add eax, dword [esi + 0xd0]
mov dword [esi + 0x60], eax
jmp 0x406290
cmp ecx, 0x44fbb876
je 0x407fec
cmp ecx, 0x47e6b699
jne 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0xdc34a73b
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x8a43329
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
cmovge ecx, edx
xor eax, eax
cmp eax, dword [esi + 0x98]
mov eax, 0
sbb eax, dword [esi + 0x9c]
setl byte [esi + 0x39]
jmp 0x406290
cmp ecx, 0x86f3cbcd
je 0x407ff6
cmp ecx, 0x8745f931
jne 0x406290
mov eax, dword [esi + 0x68]
mov edx, 0xe5b4f7e8
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [esi + 0x4c]
lea eax, [ecx + eax + 0x14]
mov dword [esi + 0x30], eax
mov eax, dword [0x4803b8]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x4803b4], 0xa
setl cl
or cl, al
mov eax, 0xd28c666e
mov ecx, 0x88b16ae6
cmovne eax, ecx
mov ecx, 0xd28c666e
cmovne ecx, edx
mov edx, 0x1186300d
nop word cs:[eax + eax]
cmp edx, 0xd28c666d
jle 0x407070
cmp edx, 0xd28c666e
je 0x407085
cmp edx, 0x1186300d
je 0x40708f
cmp edx, 0xe5b4f7e8
jne 0x407040
mov edx, dword [esi + 0x30]
mov edx, dword [edx]
mov dword [esi + 8], edx
mov edx, eax
jmp 0x407040
cmp edx, 0x88b16ae6
je 0x407093
cmp edx, 0xc6638f21
jne 0x407040
jmp 0x408014
mov edx, dword [esi + 0x30]
mov edx, 0xe5b4f7e8
jmp 0x407040
mov edx, ecx
jmp 0x407040
mov edx, 0xc6638f21
jmp 0x407040
cmp ecx, 0xfa82a524
je 0x408021
cmp ecx, 0x258a668
jne 0x406290
mov ecx, 0x6cbad59
jmp 0x406290
cmp ecx, 0xbb95c1d6
je 0x408048
cmp ecx, 0xc15f5617
jne 0x406290
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0x78]
mov edi, 0xb8666757
mov ebx, 0x9dd6ab10
mov dword [eax], ecx
mov eax, dword [0x4803d0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x9dd6ab10
jmp 0x4085de
cmp ecx, 0x5f056d15
je 0x40805e
cmp ecx, 0x62694f52
jne 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov ebx, 0xa41cc754
lea ecx, [edx + 1]
imul ecx, edx
mov edi, ecx
xor edi, 0xfffffffe
test edi, ecx
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x3e6a9b51
cmovne edx, ebx
test edi, ecx
mov ecx, edx
cmove ecx, ebx
cmp eax, 0xa
mov eax, dword [esi + 0x14]
cmovge ecx, edx
mov eax, dword [eax]
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 0x5c]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov dword [esi + 0xd0], eax
jmp 0x406290
cmp ecx, 0x9dd6ab10
je 0x40809d
cmp ecx, 0x9e10a3de
jne 0x406290
mov ecx, 0x397e17a1
jmp 0x406290
cmp ecx, 0x1b00c9cb
je 0x4080af
cmp ecx, 0x1cbf5f26
jne 0x406290
mov ecx, 0x13eb9c22
jmp 0x406290
cmp ecx, 0xdc34a73b
je 0x4080c4
cmp ecx, 0xdd4dd6e7
jne 0x406290
mov ecx, dword [esi + 0x90]
add ecx, dword [esi + 0xf4]
push 0
push 0
call fcn.00410ec0
mov ecx, 0x869d0f19
jmp 0x406290
cmp ecx, 0x3d2039c7
je 0x4080ce
cmp ecx, 0x3e6a9b51
jne 0x406290
mov eax, dword [esi + 0x14]
mov ecx, 0x62694f52
jmp 0x406290
cmp ecx, 0x97012539
je 0x4080d8
cmp ecx, 0x9776b152
jne 0x406290
mov ecx, 0x92170ba8
jmp 0x406290
cmp ecx, 0xec14928
je 0x408125
cmp ecx, 0xf13cc9e
jne 0x406290
mov ecx, 0x86f3cbcd
jmp 0x406290
cmp ecx, 0xcf59fef0
je 0x408149
cmp ecx, 0xd233317c
jne 0x406290
mov ecx, 0x9baf04e8
jmp 0x406290
cmp ecx, 0x71b9cf08
je 0x408153
cmp ecx, 0x73f08616
jne 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0x1cbf5f26
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x13eb9c22
jmp 0x406272
cmp ecx, 0xad984ad0
je 0x408197
cmp ecx, 0xaed2c4ef
jne 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0x201b31ec
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0xbb5c804f
jmp 0x408181
cmp ecx, 0x2d42b134
je 0x4081a1
cmp ecx, 0x2fa0e485
jne 0x406290
mov eax, dword [esi + 0x14]
mov ecx, 0x774404ca
mov eax, dword [eax]
mov dword [esi + 0x4c], eax
jmp 0x406290
cmp ecx, 0xed6c287f
je 0x4082b7
cmp ecx, 0xed8592cb
jne 0x406290
mov eax, dword [esi + 0x60]
mov ecx, dword [0x4803c0]
mov edi, 0x1c3a6a4d
mov ebx, 0x363b40f5
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp dword [0x4803bc], 0xa
setl dl
or dl, cl
mov edx, 0x1c3a6a4d
mov ecx, 0xb2f12282
cmovne edx, ecx
mov ecx, 0x2587090
mov dword [esi + 0x20], edx
cmovne edi, ecx
mov edx, 0x363b40f5
mov ecx, 0x5e31cac3
cmovne edx, ecx
mov ecx, 0xa63181d
mov dword [esi + 0x1c], edx
cmovne ebx, ecx
mov edx, 0x5f2dec0
jmp 0x4073c0
mov edx, 0xa63181d
nop dword [eax + eax]
mov ecx, edx
cmp edx, 0xab4f5b7
jle 0x4073f0
cmp ecx, 0x363b40f4
jg 0x407420
mov edx, edi
cmp ecx, 0xab4f5b8
je 0x4073c0
mov edx, ecx
cmp ecx, 0x1c3a6a4d
jne 0x4073c0
mov edx, 0x2587090
jmp 0x4073c0
cmp ecx, 0x5f2debf
jle 0x407439
mov edx, ebx
cmp ecx, 0x5f2dec0
je 0x4073c0
mov edx, ecx
cmp ecx, 0xa63181d
jne 0x4073c0
mov edx, dword [esi + 0x1c]
jmp 0x4073c0
cmp ecx, 0x363b40f5
je 0x4073b6
mov edx, ecx
cmp ecx, 0x5e31cac3
jne 0x4073c0
mov edx, 0xab4f5b8
jmp 0x4073c0
cmp ecx, 0x2587090
jne 0x407455
mov edx, dword [eax + 0x24]
mov ecx, dword [eax + 0x20]
mov dword [esi + 0x28], edx
mov edx, dword [esi + 0x20]
mov dword [esi + 0x2c], ecx
jmp 0x4073c0
mov edx, ecx
cmp ecx, 0xb2f12282
jne 0x4073c0
mov eax, dword [esi + 0x28]
mov ebx, 0xd8c52f15
mov edi, 0xf4377d48
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x2c]
mov dword [esi + 8], eax
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
mov edx, dword [esi + 0x24]
cmp dword [edx], ecx
mov ecx, dword [edx + 4]
sbb ecx, eax
mov eax, dword [0x4803d0]
setge byte [esi + 0x37]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0xf4377d48
jmp 0x408080
cmp ecx, 0x4fd4bc6d
je 0x4082fc
cmp ecx, 0x57176afc
jne 0x406290
mov eax, dword [esi + 4]
mov eax, dword [eax]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0xc6cd9ecf
and eax, 4
and ecx, 0x39326130
or edx, ecx
mov ecx, 0x1f444506
xor edx, 0x39326134
or eax, edx
mov dword [esi + 0x78], eax
jmp 0x406290
cmp ecx, 0x8efffeb5
je 0x408322
cmp ecx, 0x92170ba8
jne 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0xdb5397c2
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0xd3097f18
jmp 0x408181
cmp ecx, 0x73c2757
je 0x408338
cmp ecx, 0x8a43329
jne 0x406290
mov eax, dword [esi + 0x98]
mov eax, dword [esi + 0x9c]
mov ecx, 0x47e6b699
jmp 0x406290
cmp ecx, 0xc7adb59c
je 0x40836d
cmp ecx, 0xc985d7c7
jne 0x406290
mov ecx, dword [esi + 0x94]
add ecx, dword [esi + 0xf8]
mov eax, dword [esi + 4]
push 0
push dword [eax]
call fcn.004110b0
mov eax, dword [esi + 0x14]
mov eax, dword [eax]
mov dword [esi + 0xfc], eax
mov ecx, dword [esi + 0x40]
call fcn.004115e0
mov eax, dword [esi + 0x40]
mov ecx, 0x48e0eee0
jmp 0x406290
cmp ecx, 0x6b7d1160
je 0x408422
cmp ecx, 0x6d5961f5
jne 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0xb1e1a7e9
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x97012539
jmp 0x406272
cmp ecx, 0xa41cc754
je 0x408434
cmp ecx, 0xa589c350
jne 0x406290
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0xb8]
mov edx, dword [esi + 0xbc]
mov dword [eax], ecx
mov dword [eax + 4], edx
mov ecx, 0x443bb83b
jmp 0x406290
cmp ecx, 0x256a6da8
je 0x40843e
cmp ecx, 0x271aebcd
jne 0x406290
mov eax, dword [esi + 0xe4]
mov ebx, 0xeb6ff63
mov eax, dword [eax]
mov ecx, dword [esi + 0x8c]
mov edx, dword [0x4803c8]
lea edi, [edx + 1]
imul edi, edx
mov edx, edi
xor edx, 0xfffffffe
test edx, edi
mov edi, 0xf1e872f4
sete dl
cmp dword [0x4803c4], 0xa
setl dh
or dh, dl
mov edx, 0xf1e8d4c3
cmovne edx, edi
mov edi, 0xf1e8d4c3
cmovne edi, ebx
mov ebx, 0xfeccf782
nop word cs:[eax + eax]
cmp ebx, 0xfeccf781
jle 0x4076e0
cmp ebx, 0xfeccf782
je 0x4076f7
cmp ebx, 0x456bdec2
je 0x40849a
cmp ebx, 0xeb6ff63
jne 0x4076b0
mov ebx, edx
jmp 0x4076b0
cmp ebx, 0xf1e872f4
je 0x4076fb
cmp ebx, 0xf1e8d4c3
jne 0x4076b0
mov ebx, 0xeb6ff63
jmp 0x4076b0
mov ebx, edi
jmp 0x4076b0
mov ebx, 0x456bdec2
jmp 0x4076b0
cmp ecx, 0xdfa16aef
je 0x4084c9
cmp ecx, 0xe38d1580
jne 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0xf4377d48
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0xed8592cb
jmp 0x406272
cmp ecx, 0x438a30ab
je 0x4084fb
cmp ecx, 0x443bb83b
jne 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0x71b9cf08
lea ecx, [edx - 1]
jmp 0x408166
cmp ecx, 0x9a9980c2
je 0x408505
cmp ecx, 0x9b32db9f
jne 0x406290
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0xec]
mov dword [eax], ecx
mov ecx, 0xdde4cf42
jmp 0x406290
cmp ecx, 0x14123485
je 0x40850f
cmp ecx, 0x1423d104
jne 0x406290
mov ecx, 0x65818af3
jmp 0x406290
cmp ecx, 0xd87a6e37
je 0x408519
cmp ecx, 0xd8c52f15
jne 0x406290
cmp byte [esi + 0x37], 0
mov ecx, 0x5f056d15
mov eax, 0xe65b160a
cmovne ecx, eax
jmp 0x406290
cmp ecx, 0x79a055af
je 0x40852f
cmp ecx, 0x7b6ad5e3
jne 0x406290
mov eax, dword [esi + 0x14]
mov ecx, dword [ebp + 8]
mov dword [eax], ecx
mov eax, dword [esi + 4]
mov eax, dword [esi + 4]
mov dword [eax], 0
mov eax, dword [esi + 0x24]
push dword [ebp + 0xc]
call fcn.0040bc10
add esp, 4
mov ecx, dword [esi + 0x24]
mov edi, 0x363b40f5
mov ebx, 0x5f2dec0
mov dword [ecx], eax
mov dword [ecx + 4], 0
mov eax, dword [esi + 0x18]
mov eax, dword [esi + 0x14]
mov eax, dword [eax]
mov ecx, dword [eax]
mov ecx, dword [ecx + 4]
mov dword [esi + 0x20], ecx
mov ecx, dword [0x4803c0]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
setne cl
cmp dword [0x4803bc], 0xa
setge dl
mov ch, dl
or dl, cl
xor ch, cl
xor dl, 1
or dl, ch
mov edx, 0x1c3a6a4d
mov ecx, 0xb2f12282
cmovne edx, ecx
mov ecx, 0x1c3a6a4d
mov dword [esi + 0x1c], edx
mov edx, 0x2587090
cmovne ecx, edx
mov edx, 0x5e31cac3
cmovne edi, edx
mov edx, 0x363b40f5
mov dword [esi + 0x2c], edi
mov edi, 0xa63181d
cmovne edx, edi
jmp 0x4078d0
mov ebx, 0xa63181d
nop word cs:[eax + eax]
mov edi, ebx
cmp ebx, 0xab4f5b7
jle 0x407900
cmp edi, 0x363b40f4
jg 0x407930
mov ebx, ecx
cmp edi, 0xab4f5b8
je 0x4078d0
mov ebx, edi
cmp edi, 0x1c3a6a4d
jne 0x4078d0
mov ebx, 0x2587090
jmp 0x4078d0
cmp edi, 0x5f2debf
jle 0x407949
mov ebx, edx
cmp edi, 0x5f2dec0
je 0x4078d0
mov ebx, edi
cmp edi, 0xa63181d
jne 0x4078d0
mov ebx, dword [esi + 0x2c]
jmp 0x4078d0
cmp edi, 0x363b40f5
je 0x4078bc
mov ebx, edi
cmp edi, 0x5e31cac3
jne 0x4078d0
mov ebx, 0xab4f5b8
jmp 0x4078d0
cmp edi, 0x2587090
jne 0x40796a
mov edi, dword [esi + 0x20]
mov ebx, dword [eax + edi + 0x20]
mov edi, dword [eax + edi + 0x24]
mov dword [esi + 0x28], ebx
mov ebx, dword [esi + 0x1c]
mov dword [esi + 0x48], edi
jmp 0x4078d0
mov ebx, edi
cmp edi, 0xb2f12282
jne 0x4078d0
mov eax, dword [esi + 0x48]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x28]
mov dword [esi + 8], eax
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
cmp ecx, 1
mov ecx, 0xcc26fa8
sbb eax, 0
mov eax, 0xe65b160a
cmovl ecx, eax
jmp 0x406290
cmp ecx, 0xb1e1a7e9
je 0x40856c
cmp ecx, 0xb57d2dfb
jne 0x406290
mov ecx, 0x2996a64b
jmp 0x406290
cmp ecx, 0x3684767d
je 0x40857c
cmp ecx, 0x37724706
jne 0x406290
mov eax, dword [esi + 4]
mov ecx, 0xdf2825da
jmp 0x406290
mov eax, dword [esi + 0x18]
mov ecx, 0x256a6da8
jmp 0x406290
mov ecx, 0x73f08616
jmp 0x406290
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0xd8]
mov dword [eax], ecx
mov ecx, 0xec205e62
jmp 0x406290
mov ecx, 0x71b9cf08
jmp 0x406290
mov eax, dword [esi + 0x60]
mov ecx, dword [0x4803c0]
mov edi, 0x1c3a6a4d
mov ebx, 0x363b40f5
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x4803bc], 0xa
setl dl
or dl, cl
mov edx, 0x1c3a6a4d
mov ecx, 0xb2f12282
cmovne edx, ecx
mov ecx, 0x2587090
mov dword [esi + 0x20], edx
cmovne edi, ecx
mov edx, 0x363b40f5
mov ecx, 0x5e31cac3
cmovne edx, ecx
mov ecx, 0xa63181d
mov dword [esi + 0x1c], edx
cmovne ebx, ecx
mov edx, 0x5f2dec0
jmp 0x407a90
mov edx, 0xa63181d
nop word [eax + eax]
mov ecx, edx
cmp edx, 0xab4f5b7
jle 0x407ac0
cmp ecx, 0x363b40f4
jg 0x407af0
mov edx, edi
cmp ecx, 0xab4f5b8
je 0x407a90
mov edx, ecx
cmp ecx, 0x1c3a6a4d
jne 0x407a90
mov edx, 0x2587090
jmp 0x407a90
cmp ecx, 0x5f2debf
jle 0x407b09
mov edx, ebx
cmp ecx, 0x5f2dec0
je 0x407a90
mov edx, ecx
cmp ecx, 0xa63181d
jne 0x407a90
mov edx, dword [esi + 0x1c]
jmp 0x407a90
cmp ecx, 0x363b40f5
je 0x407a85
mov edx, ecx
cmp ecx, 0x5e31cac3
jne 0x407a90
mov edx, 0xab4f5b8
jmp 0x407a90
cmp ecx, 0x2587090
jne 0x407b25
mov edx, dword [eax + 0x24]
mov ecx, dword [eax + 0x20]
mov dword [esi + 0x28], edx
mov edx, dword [esi + 0x20]
mov dword [esi + 0x2c], ecx
jmp 0x407a90
mov edx, ecx
cmp ecx, 0xb2f12282
jne 0x407a90
mov eax, dword [esi + 0x2c]
mov ecx, 0xed8592cb
mov dword [esi + 8], eax
mov eax, dword [esi + 0x28]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 8]
mov eax, dword [esi + 0xc]
mov eax, dword [esi + 0x24]
jmp 0x406290
mov ecx, 0xa22eb3cf
jmp 0x406290
mov eax, dword [esi + 4]
mov ecx, 0x4bf77829
mov eax, dword [eax]
or eax, 4
mov dword [esi + 0xd8], eax
jmp 0x406290
mov eax, dword [0x4803d0]
mov edi, 0x6e423091
mov ebx, 0x5116d04
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x5116d04
jmp 0x4085de
mov ecx, 0x955dc64c
jmp 0x406290
mov ecx, 0x68e7e189
jmp 0x406290
mov eax, dword [0x4803d0]
mov ebx, 0xd233317c
mov edi, 0x9e10a3de
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x9e10a3de
jmp 0x408080
cmp byte [esi + 0x38], 0
mov ecx, 0x9baf04e8
mov eax, 0x1423d104
cmovne ecx, eax
jmp 0x406290
mov ecx, 0x65818af3
jmp 0x406290
cmp byte [esi + 0x39], 0
mov ecx, 0x29388968
mov eax, 0x6b7d1160
cmovne ecx, eax
jmp 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0x16a82147
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x5116d04
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
mov eax, dword [esi + 4]
cmovge ecx, edx
mov eax, dword [eax]
mov dword [esi + 0x7c], eax
jmp 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0x37724706
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0xdf2825da
jmp 0x406272
mov eax, dword [0x4803d0]
mov edi, 0x397e17a1
mov ebx, 0x9e10a3de
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x9e10a3de
jmp 0x4085de
mov dword [esi + 0x58], 0
mov ecx, 0x2d42b134
mov dword [esi + 0x54], 0
jmp 0x406290
mov eax, dword [esi + 0x14]
mov ecx, 0xd2b84549
jmp 0x406290
mov eax, dword [esi + 0x68]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [esi + 0x4c]
lea eax, [ecx + eax + 0x14]
mov dword [esi + 0x30], eax
mov eax, dword [0x4803b8]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
setne al
cmp dword [0x4803b4], 0xa
setge cl
mov edx, ecx
or cl, al
xor dl, al
xor cl, 1
mov eax, 0xd28c666e
or cl, dl
mov ecx, 0x88b16ae6
mov edx, 0xe5b4f7e8
cmovne eax, ecx
mov ecx, 0xd28c666e
cmovne ecx, edx
mov edx, 0x1186300d
cmp edx, 0xd28c666d
jle 0x407d60
cmp edx, 0xd28c666e
je 0x407d75
cmp edx, 0x1186300d
je 0x407d7f
cmp edx, 0xe5b4f7e8
jne 0x407d30
mov edx, dword [esi + 0x30]
mov edx, dword [edx]
mov dword [esi + 8], edx
mov edx, eax
jmp 0x407d30
cmp edx, 0x88b16ae6
je 0x407d83
cmp edx, 0xc6638f21
jne 0x407d30
jmp 0x4085ac
mov edx, dword [esi + 0x30]
mov edx, 0xe5b4f7e8
jmp 0x407d30
mov edx, ecx
jmp 0x407d30
mov edx, 0xc6638f21
jmp 0x407d30
movsx eax, byte [eax + ecx + 0x40]
mov ecx, dword [esi + 0x70]
push eax
call fcn.00410760
mov edi, dword [0x4803d0]
mov edx, dword [0x4803cc]
mov dword [esi + 8], 0xffffffff
lea ecx, [edi + 1]
imul ecx, edi
mov edi, 0xc7adb59c
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0xd87a6e37
cmovne edi, ebx
cmp ecx, 0xffffffff
mov ecx, edi
cmove ecx, ebx
cmp edx, 0xa
cmovge ecx, edi
mov edi, dword [esi + 8]
cmp edi, eax
sete byte [esi + 0x3a]
jmp 0x406290
mov eax, dword [esi + 4]
mov ecx, 0x6e423091
jmp 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0x258a668
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0xf7b65178
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
mov edi, dword [esi + 0x18]
cmp eax, 0xa
cmovge ecx, edx
vmovsd xmm0, qword [edi]
vmovsd qword [esi + 0x98], xmm0
jmp 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0xc1e08179
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0xf7b65178
jmp 0x408181
mov ecx, 0x1048028c
jmp 0x406290
mov ecx, 0x4fd4bc6d
jmp 0x406290
mov eax, dword [0x4803d0]
mov ebx, 0x8c1903a5
mov edi, 0x8745f931
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x8745f931
jmp 0x408080
mov ecx, 0xeec22e67
jmp 0x406290
mov eax, dword [0x4803d0]
mov edi, 0x9a9980c2
mov ebx, 0xa099cb1c
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0xa099cb1c
jmp 0x4085de
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov ebx, 0xd96cf16f
lea ecx, [edx + 1]
imul ecx, edx
mov edi, ecx
xor edi, 0xfffffffe
test edi, ecx
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x4eff618d
cmovne edx, ebx
test edi, ecx
mov ecx, edx
cmove ecx, ebx
cmp eax, 0xa
mov eax, dword [esi + 0x14]
cmovge ecx, edx
mov eax, dword [eax]
mov dword [esi + 0x64], eax
mov eax, dword [esi + 0x64]
mov eax, dword [eax]
add eax, 4
mov dword [esi + 0xd4], eax
jmp 0x406290
mov eax, dword [esi + 0xa8]
mov ecx, dword [esi + 0xac]
mov edi, 0x935fe121
mov edx, 0x54e5a1bb
sub eax, edi
sbb ecx, edx
sub eax, dword [esi + 0x100]
sbb ecx, dword [esi + 0x104]
add eax, edi
mov dword [esi + 0xb0], eax
adc ecx, edx
mov dword [esi + 0xb4], ecx
mov ecx, 0x2d42b134
mov eax, dword [esi + 0xb0]
mov dword [esi + 0x58], eax
mov eax, dword [esi + 0xb4]
mov dword [esi + 0x54], eax
jmp 0x406290
mov eax, dword [esi + 0x7c]
mov ecx, 0x35a5dbc1
jmp 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0x8efffeb5
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0xf290c03a
jmp 0x406272
mov eax, dword [esi + 0x18]
mov ecx, 0x3269087c
vmovsd xmm0, qword [eax]
vmovsd qword [esi + 0xa0], xmm0
jmp 0x406290
mov ecx, 0xeec22e67
jmp 0x406290
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0xc8]
mov edx, dword [esi + 0xcc]
mov dword [eax], ecx
mov dword [eax + 4], edx
mov ecx, 0x987222a8
jmp 0x406290
mov eax, dword [esi + 8]
mov ecx, 0x8c1903a5
jmp 0x406290
mov eax, dword [0x4803d0]
mov edi, 0x3c5b0600
mov ebx, 0x438a30ab
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x438a30ab
jmp 0x4085de
cmp byte [esi + 0x3c], 0
mov ecx, 0x4fd4bc6d
mov eax, 0xaed2c4ef
cmovne ecx, eax
jmp 0x406290
mov eax, dword [0x4803d0]
mov ebx, 0xd2b84549
mov edi, 0x4eff618d
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x4eff618d
sete al
cmove ecx, ebx
cmp dword [0x4803cc], 0xa
setl dl
cmovge ecx, edi
xor dl, al
cmovne ecx, ebx
jmp 0x406290
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0x78]
mov dword [eax], ecx
mov ecx, 0xc15f5617
jmp 0x406290
mov eax, dword [esi + 0x14]
mov ecx, 0xed6c287f
mov eax, dword [eax]
mov dword [esi + 0x80], eax
jmp 0x406290
mov ecx, 0xcc0d5a71
jmp 0x406290
mov ecx, 0x29388968
jmp 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0xb1e1a7e9
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x14123485
cmovne edi, ebx
test edx, ecx
mov ecx, edi
cmove ecx, ebx
cmp eax, 0xa
cmovge ecx, edi
cmp dword [esi + 0x84], 0
sete byte [esi + 0x3c]
jmp 0x406290
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
add ecx, 0xffffffff
adc eax, 0xffffffff
mov dword [esi + 0xb8], ecx
mov ecx, 0xa589c350
mov dword [esi + 0xbc], eax
jmp 0x406290
mov ecx, 0xec14928
jmp 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0x9073344
lea ecx, [edx + 1]
imul ecx, edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete dl
cmp eax, 0xa
setl dh
xor dh, dl
mov edx, 0x853f89ae
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
cmovge ecx, edx
jmp 0x406290
mov ecx, 0xc33b9aeb
jmp 0x406290
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0x58]
mov dword [eax], ecx
mov ecx, dword [esi + 0x54]
mov dword [eax + 4], ecx
mov eax, dword [esi + 0x40]
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x40]
push dword [eax]
call fcn.0040fd50
mov ecx, dword [0x4803b0]
mov edx, dword [0x4803ac]
mov edi, 0x1a9fdc36
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
xor ecx, 0xfffffffe
test ecx, eax
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0x221cba81
cmovne edi, ebx
test ecx, eax
mov eax, dword [esi + 0x40]
mov ecx, edi
sete byte [esi + 0x3e]
cmove ecx, ebx
cmp edx, 0xa
cmovge ecx, edi
mov edi, 0x61269ec2
setl byte [esi + 0x3f]
mov dword [esi + 0x20], eax
cmp edi, 0x221cba80
jg 0x408250
cmp edi, 0x86ccd0d9
je 0x4085fb
cmp edi, 0x1a9fdc36
je 0x408296
cmp edi, 0x20f553fe
jne 0x408210
mov eax, dword [esi + 0x30]
mov edi, 0x86ccd0d9
add eax, 4
mov dword [esi + 0x1c], eax
jmp 0x408210
cmp edi, 0x221cba81
je 0x4082a0
cmp edi, 0x669520e4
je 0x4082aa
cmp edi, 0x61269ec2
jne 0x408210
movzx eax, byte [esi + 0x3e]
mov bh, byte [esi + 0x3f]
mov edi, 0x1a9fdc36
mov edx, 0x669520e4
mov bl, al
xor bl, bh
test bh, bh
cmovne edi, edx
test al, al
mov eax, 0x1a9fdc36
cmove edi, eax
test bl, bl
cmovne edi, edx
jmp 0x408210
mov edi, 0x669520e4
jmp 0x408210
mov edi, 0x20f553fe
jmp 0x408210
mov eax, dword [esi + 0x20]
mov edi, ecx
mov dword [esi + 0x30], eax
jmp 0x408210
mov eax, dword [esi + 0x80]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [esi + 0x80]
mov eax, dword [ecx + eax + 0x38]
mov ecx, 0x1e08a895
nop word cs:[eax + eax]
cmp ecx, 0x1e08a895
je 0x4082f5
cmp ecx, 0x966ed585
jne 0x4082e0
jmp 0x408619
mov ecx, 0x966ed585
jmp 0x4082e0
mov eax, dword [esi + 0x14]
mov ecx, 0xab401bff
mov eax, dword [eax]
mov dword [esi + 0x90], eax
mov eax, dword [esi + 0x90]
mov eax, dword [eax]
add eax, 4
mov dword [esi + 0xf0], eax
jmp 0x406290
mov eax, dword [esi + 0xa0]
mov eax, dword [esi + 0xa4]
mov ecx, 0xf290c03a
jmp 0x406290
mov eax, dword [esi + 0xe8]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x1942adfe
and eax, 4
and ecx, 0xe6bd5201
or edx, ecx
mov ecx, 0x9b32db9f
xor edx, 0xe6bd5205
or eax, edx
mov dword [esi + 0xec], eax
jmp 0x406290
mov eax, dword [esi + 0x50]
mov ecx, dword [esi + 0x74]
mov edx, dword [0x4803c8]
lea edi, [edx + 1]
imul edi, edx
mov edx, edi
xor edx, 0xfffffffe
test edx, edi
mov edi, 0xf1e872f4
setne dl
sete dh
cmp dword [0x4803c4], 0xa
setge bl
setl bh
or bl, dl
xor bh, dh
mov edx, 0xf1e8d4c3
xor bl, 1
or bl, bh
mov ebx, 0xeb6ff63
cmovne edx, edi
mov edi, 0xf1e8d4c3
cmovne edi, ebx
mov ebx, 0xfeccf782
nop word cs:[eax + eax]
cmp ebx, 0xfeccf781
jle 0x408400
cmp ebx, 0xfeccf782
je 0x408417
cmp ebx, 0x456bdec2
je 0x408654
cmp ebx, 0xeb6ff63
jne 0x4083d0
mov ebx, edx
jmp 0x4083d0
cmp ebx, 0xf1e872f4
je 0x40841b
cmp ebx, 0xf1e8d4c3
jne 0x4083d0
mov ebx, 0xeb6ff63
jmp 0x4083d0
mov ebx, edi
jmp 0x4083d0
mov ebx, 0x456bdec2
jmp 0x4083d0
mov eax, dword [esi + 0x14]
mov ecx, 0x3684767d
mov eax, dword [eax]
mov dword [esi + 0x6c], eax
jmp 0x406290
mov ecx, 0xf0827084
jmp 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0xf0a6a9c7
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0xf13cc9e
cmovne edi, ebx
test edx, ecx
mov ecx, edi
cmove ecx, ebx
cmp eax, 0xa
mov eax, dword [esi + 0x18]
cmovge ecx, edi
mov edx, dword [eax]
mov eax, dword [eax + 4]
add edx, 0xffffffff
adc eax, 0xffffffff
mov dword [esi + 0xc8], edx
mov dword [esi + 0xcc], eax
jmp 0x406290
movsx eax, byte [ecx + eax + 0x40]
mov ecx, dword [esi + 0xe0]
push eax
call fcn.00410760
mov dword [esi + 8], 0xffffffff
mov edx, 0x997d4fa7
mov ecx, dword [esi + 8]
cmp ecx, eax
mov ecx, 0x4e95fad8
cmove ecx, edx
jmp 0x406290
mov edx, dword [0x4803d0]
mov eax, dword [0x4803cc]
mov edi, 0xf0a6a9c7
lea ecx, [edx + 1]
imul ecx, edx
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x256a6da8
jmp 0x406272
mov ecx, 0xfa82a524
jmp 0x406290
mov ecx, 0xdfa16aef
jmp 0x406290
mov ecx, 0xbb95c1d6
jmp 0x406290
cmp byte [esi + 0x3a], 0
mov ecx, 0xcf59fef0
mov eax, 0x57176afc
cmovne ecx, eax
jmp 0x406290
mov eax, dword [esi + 0xdc]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [esi + 0x88]
mov eax, dword [ecx + eax + 0x38]
mov ecx, 0x1e08a895
nop dword [eax]
cmp ecx, 0x1e08a895
je 0x408565
cmp ecx, 0x966ed585
jne 0x408550
jmp 0x408676
mov ecx, 0x966ed585
jmp 0x408550
mov eax, dword [esi + 0x84]
mov ecx, 0x97012539
jmp 0x406290
mov eax, dword [esi + 0x6c]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [esi + 0x6c]
mov eax, dword [ecx + eax + 0x38]
mov ecx, 0x1e08a895
cmp ecx, 0x1e08a895
je 0x4085a5
cmp ecx, 0x966ed585
jne 0x408590
jmp 0x4086a8
mov ecx, 0x966ed585
jmp 0x408590
mov eax, dword [esi + 8]
mov edi, 0x94a89ca6
mov ebx, 0x8745f931
not eax
or eax, 0xfffffe3f
cmp eax, 0xffffffbf
mov eax, dword [0x4803d0]
setne byte [esi + 0x38]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x8745f931
sete al
cmove ecx, edi
cmp dword [0x4803cc], 0xa
setl dl
cmovge ecx, ebx
xor dl, al
cmovne ecx, edi
jmp 0x406290
mov eax, dword [esi + 0x1c]
mov ecx, 0x2fa0e485
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp byte [eax], 0
mov eax, 0xa930f2ca
cmove ecx, eax
jmp 0x406290
mov dword [esi + 8], eax
mov ecx, dword [esi + 8]
mov eax, dword [esi + 0x24]
push dword [eax + 4]
push dword [eax]
push dword [ebp + 0xc]
call fcn.00410ca0
mov dword [esi + 0xc4], edx
mov dword [esi + 0xc0], eax
mov ecx, 0x9c58deea
mov eax, dword [esi + 0x24]
vmovsd xmm0, qword [eax]
vmovsd qword [esi + 0x108], xmm0
jmp 0x406290
movsx eax, byte [eax + ecx + 0x40]
mov ecx, dword [esi + 0x70]
push eax
call fcn.00410760
mov dword [esi + 8], 0xffffffff
mov ecx, 0x8cce0019
mov eax, dword [esi + 8]
jmp 0x406290
mov dword [esi + 8], eax
mov ecx, 0x271aebcd
mov eax, dword [esi + 8]
mov dword [esi + 0xe0], eax
mov eax, dword [esi + 0x14]
mov eax, dword [eax]
mov dword [esi + 0x8c], eax
mov eax, dword [esi + 0x8c]
mov eax, dword [eax]
add eax, 4
mov dword [esi + 0xe4], eax
jmp 0x406290
mov dword [esi + 8], eax
mov ecx, 0x4f2480a8
mov eax, dword [esi + 8]
mov dword [esi + 0x70], eax
mov eax, dword [esi + 0x14]
mov eax, dword [eax]
mov dword [esi + 0x50], eax
mov eax, dword [esi + 0x50]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov dword [esi + 0x74], eax
jmp 0x406290
cmp ecx, 0x48e0eee0
jne 0x406290
mov eax, dword [esi + 0x18]
mov eax, dword [esi + 0x24]
mov eax, dword [esi + 4]
mov edi, dword [esi + 0xfc]
mov ecx, dword [esi + 0x110]
xor ecx, ebp
call fcn.00439dc0
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret