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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xf8
mov eax, dword [0x4ab2c0]
mov esi, esp
xor eax, ebp
mov dword [esi + 0xf0], eax
mov eax, dword [0x4ad3d0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, dword [0x4ad3cc]
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x7943d04a
sete byte [esi + 0x23]
cmp eax, 0xa
setl byte [esi + 0x24]
jmp 0x406270
mov eax, dword [0x4ad3d0]
mov edi, 0x267e9218
mov ebx, 0xa9485b31
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0xa9485b31
sete al
cmove ecx, edi
cmp dword [0x4ad3cc], 0xa
setl dl
cmovge ecx, ebx
xor dl, al
cmovne ecx, edi
nop word cs:[eax + eax]
cmp ecx, 0xf46d14b9
jg 0x4062f0
cmp ecx, 0xc2d97e70
jle 0x406360
cmp ecx, 0xd3c7f289
jg 0x40648f
cmp ecx, 0xc81c8f5c
jle 0x4065ce
cmp ecx, 0xce842ecf
jg 0x4068ce
cmp ecx, 0xcc093785
jg 0x406e4f
cmp ecx, 0xc81c8f5d
je 0x40740f
cmp ecx, 0xc8c13978
jne 0x406270
mov eax, dword [esi + 8]
mov ecx, 0xc2d97e71
mov eax, dword [eax]
mov dword [esi + 0x48], eax
mov eax, dword [esi + 0x48]
mov eax, dword [eax]
add eax, 4
mov dword [esi + 0xcc], eax
jmp 0x406270
cmp ecx, 0x42b7cd70
jle 0x4063e0
cmp ecx, 0x67bb8f43
jg 0x4064e0
cmp ecx, 0x50b3903c
jle 0x406608
cmp ecx, 0x58fe1c38
jg 0x406908
cmp ecx, 0x52d71d2b
jg 0x406e8b
cmp ecx, 0x50b3903d
je 0x407439
cmp ecx, 0x51fffb90
jne 0x406270
mov eax, dword [esi + 4]
mov ecx, 0xc26653d9
jmp 0x406270
cmp ecx, 0xabe807c2
jg 0x40653a
cmp ecx, 0x99cf915e
jle 0x406651
cmp ecx, 0x9edbebd8
jg 0x40693e
cmp ecx, 0x9ca94c1a
jg 0x406ed5
cmp ecx, 0x99cf915f
je 0x40745f
cmp ecx, 0x9c05b16b
jne 0x406270
mov eax, dword [esi + 4]
mov edi, 0xc5eea59f
mov ebx, 0x6ac2a7c5
mov eax, dword [eax]
mov dword [esi + 0x44], eax
mov eax, dword [0x4ad3d0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x6ac2a7c5
jmp 0x406249
cmp ecx, 0x20b35bbe
jle 0x406580
cmp ecx, 0x2d63c743
jle 0x40671f
cmp ecx, 0x3af17135
jg 0x40696c
cmp ecx, 0x2eb99bb9
jg 0x406ef7
cmp ecx, 0x2d63c744
je 0x407469
cmp ecx, 0x2da5edd8
jne 0x406270
mov edx, dword [0x4ad3d0]
mov eax, dword [0x4ad3cc]
mov edi, 0x774aafdd
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, 0xc1f71857
cmovne edi, ebx
test edx, ecx
mov ecx, edi
cmove ecx, ebx
mov ebx, dword [esi + 0x34]
cmp eax, 0xa
cmovge ecx, edi
mov edx, ebx
not edx
mov edi, ebx
and edi, 0x94d67385
and ebx, 4
and edx, 0x6b298c7a
or edi, edx
xor edi, 0x6b298c7e
or ebx, edi
mov dword [esi + 0x78], ebx
jmp 0x406270
cmp ecx, 0xe1ed0db4
jle 0x406782
cmp ecx, 0xe6928de5
jg 0x4069b4
cmp ecx, 0xe37a93c7
jg 0x406f41
cmp ecx, 0xe1ed0db5
je 0x40747e
cmp ecx, 0xe1f5dcd1
jne 0x406270
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0xac]
mov dword [eax], ecx
mov ecx, 0xa1593259
jmp 0x406270
cmp ecx, 0x7444ca43
jle 0x4067ce
cmp ecx, 0x774aafdc
jg 0x406a09
cmp ecx, 0x74b45cf4
jg 0x406f8c
cmp ecx, 0x7444ca44
je 0x40748c
cmp ecx, 0x7464a749
jne 0x406270
mov eax, dword [esi + 0xb4]
mov ecx, 0xabe807c3
mov eax, dword [eax]
mov eax, dword [eax + 4]
add eax, dword [esi + 0x6c]
mov dword [esi + 0xb8], eax
jmp 0x406270
cmp ecx, 0xb86d15ec
jle 0x406808
cmp ecx, 0xbd06fbb3
jle 0x406a5c
cmp ecx, 0xc1f71856
jg 0x406fc0
cmp ecx, 0xbd06fbb4
je 0x407496
cmp ecx, 0xbde79658
jne 0x406270
mov ecx, 0x46e2ecf8
jmp 0x406270
cmp ecx, 0xada9fd6
jg 0x40686b
cmp ecx, 0x5e4fcc1
jle 0x406a96
cmp ecx, 0x638d4db
jg 0x407025
cmp ecx, 0x5e4fcc2
je 0x4074b7
cmp ecx, 0x6173b31
jne 0x406270
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0x70]
mov dword [eax], ecx
mov ecx, 0x72301188
jmp 0x406270
cmp ecx, 0xc58d532b
jle 0x406ae3
cmp ecx, 0xc5eea59e
jg 0x407047
cmp ecx, 0xc58d532c
je 0x4074ec
cmp ecx, 0xc59c5041
jne 0x406270
mov ecx, 0x762b7e8c
jmp 0x406270
cmp ecx, 0x498cbbaa
jle 0x406b2d
cmp ecx, 0x4accde79
jg 0x40706c
cmp ecx, 0x498cbbab
je 0x4074f6
cmp ecx, 0x4a751eeb
jne 0x406270
mov eax, dword [esi + 0xa8]
mov ecx, 0xe1f5dcd1
or eax, 4
mov dword [esi + 0xac], eax
jmp 0x406270
cmp ecx, 0x8e75e53b
jle 0x406b83
cmp ecx, 0x93be0656
jg 0x4070bc
cmp ecx, 0x8e75e53c
je 0x407546
cmp ecx, 0x90141320
jne 0x406270
push eax
mov eax, esp
mov dword [esi + 0x38], eax
push eax
mov eax, esp
mov dword [esi + 8], 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 + 0x14], eax
push eax
push eax
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x10], eax
push eax
push eax
mov eax, esp
mov dword [esi + 0x18], eax
mov ecx, dword [ebp + 0xc]
mov ebx, 0x7066a11b
mov eax, dword [esi + 0x38]
mov dword [eax], ecx
mov ecx, dword [ebp + 8]
mov eax, dword [esi + 8]
mov dword [eax], ecx
mov eax, dword [esi + 4]
mov eax, dword [esi + 4]
mov dword [eax], 0
mov edx, dword [0x4ad3d0]
mov eax, dword [0x4ad3cc]
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, 0xc2de7be5
cmovne edx, ebx
test edi, ecx
mov ecx, edx
cmove ecx, ebx
cmp eax, 0xa
mov eax, dword [esi + 0x14]
mov eax, dword [esi + 0x38]
cmovge ecx, edx
mov eax, dword [eax]
mov dword [esi + 0x94], eax
jmp 0x406270
cmp ecx, 0x26eb2571
jle 0x406bb1
cmp ecx, 0x2aa045fa
jg 0x4070e9
cmp ecx, 0x26eb2572
je 0x40756e
cmp ecx, 0x29de36a5
jne 0x406270
mov edx, dword [0x4ad3d0]
mov eax, dword [0x4ad3cc]
mov edi, 0xd305bf12
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, 0x3d563dd4
jmp 0x407b22
cmp ecx, 0xd90fd516
jle 0x406c8f
cmp ecx, 0xda368aaa
jg 0x40713c
cmp ecx, 0xd90fd517
je 0x407578
cmp ecx, 0xd9afa967
jne 0x406270
mov eax, dword [esi + 0xc4]
mov ecx, 0x9ca94c1b
mov eax, dword [eax + 4]
add eax, dword [esi + 0x74]
mov dword [esi + 0xc8], eax
jmp 0x406270
cmp ecx, 0x6ac2a7c4
jle 0x406cbd
cmp ecx, 0x72301187
jg 0x40715e
cmp ecx, 0x6ac2a7c5
je 0x407585
cmp ecx, 0x7066a11b
jne 0x406270
mov ecx, 0x3d25bce9
jmp 0x406270
cmp ecx, 0xb2a21d80
jle 0x406d07
cmp ecx, 0xb6ed5a98
jg 0x40718c
cmp ecx, 0xb2a21d81
je 0x407592
cmp ecx, 0xb34bb821
jne 0x406270
mov edx, dword [0x4ad3d0]
mov eax, dword [0x4ad3cc]
mov edi, 0xcc093786
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, 0x52d71d2c
jmp 0x407b22
cmp ecx, 0x16940bd7
jle 0x406d7b
cmp ecx, 0x17d7eed1
jg 0x4071dc
cmp ecx, 0x16940bd8
je 0x4075ad
cmp ecx, 0x173d365e
jne 0x406270
mov edx, dword [0x4ad3d0]
mov eax, dword [0x4ad3cc]
mov edi, 0xeb5970ab
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, 0xb713bc2a
jmp 0x407b22
cmp ecx, 0xd29b927e
jg 0x407206
cmp ecx, 0xce842ed0
je 0x4075c8
cmp ecx, 0xd19d4c89
jne 0x406270
cmp byte [esi + 0x2a], 0
mov ecx, 0xc8c13978
mov eax, 0xc3d06bf4
cmovne ecx, eax
jmp 0x406270
cmp ecx, 0x5f5ed3a1
jg 0x407228
cmp ecx, 0x58fe1c39
je 0x4075d2
cmp ecx, 0x5e5405aa
jne 0x406270
mov eax, dword [esi + 8]
mov ecx, 0x2d63c744
mov eax, dword [eax]
mov dword [esi + 0x3c], eax
jmp 0x406270
cmp ecx, 0xa3be9658
jg 0x407258
cmp ecx, 0x9edbebd9
je 0x4075f9
cmp ecx, 0xa1593259
jne 0x406270
mov ecx, 0xaf7c6770
jmp 0x406270
cmp ecx, 0x3d563dd3
jg 0x40731f
cmp ecx, 0x3af17136
je 0x40760f
cmp ecx, 0x3d25bce9
jne 0x406270
push dword [esi + 0x94]
call fcn.0040b410
add esp, 4
mov ecx, dword [esi + 0x14]
mov dword [ecx], eax
mov dword [ecx + 4], 0
mov ecx, 0x21a5e99
jmp 0x406270
cmp ecx, 0xeb5970aa
jg 0x40734c
cmp ecx, 0xe6928de6
je 0x407628
cmp ecx, 0xeb0df2d3
jne 0x406270
mov eax, dword [esi + 4]
mov ebx, 0xd531e586
mov edi, 0xd90fd517
mov eax, dword [eax]
or eax, 4
mov dword [esi + 0x70], eax
mov eax, dword [0x4ad3d0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0xd90fd517
jmp 0x407eb3
cmp ecx, 0x7c5ca7ef
jg 0x40737a
cmp ecx, 0x774aafdd
je 0x40765e
cmp ecx, 0x7943d04a
jne 0x406270
movzx eax, byte [esi + 0x23]
movzx ecx, byte [esi + 0x24]
mov edi, 0x90141320
mov ebx, 0xc2de7be5
mov edx, eax
xor dl, cl
test cl, cl
mov ecx, 0xc2de7be5
cmovne ecx, edi
test al, al
cmove ecx, ebx
test dl, dl
cmovne ecx, edi
jmp 0x406270
cmp ecx, 0xbbedf5b2
jle 0x4073c5
cmp ecx, 0xbbedf5b3
je 0x407671
cmp ecx, 0xbc3d127c
jne 0x406270
cmp byte [esi + 0x29], 0
mov ecx, 0x94a941bf
mov eax, 0xb6ed5a99
cmovne ecx, eax
jmp 0x406270
cmp ecx, 0xf46d14ba
je 0x407697
cmp ecx, 0x871790
je 0x4076b0
cmp ecx, 0x21a5e99
jne 0x406270
mov eax, dword [esi + 0x10]
mov eax, dword [0x4ad3d0]
mov edi, 0x2d0536ea
mov ebx, 0xe60c8dee
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0xe60c8dee
jmp 0x406249
cmp ecx, 0xc2d97e71
je 0x4076ba
cmp ecx, 0xc2de7be5
je 0x4076cf
cmp ecx, 0xc3d06bf4
jne 0x406270
mov eax, dword [0x4ad3d0]
mov edi, 0x29de36a5
mov ebx, 0x3d563dd4
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x3d563dd4
jmp 0x406249
cmp ecx, 0x42b7cd71
je 0x4076d9
cmp ecx, 0x46e2ecf8
je 0x4076f6
cmp ecx, 0x482b2fc4
jne 0x406270
mov edx, dword [0x4ad3d0]
mov eax, dword [0x4ad3cc]
mov edi, 0xc78d9672
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, 0xe37a93c8
jmp 0x407bf6
cmp ecx, 0x85a22270
je 0x407729
cmp ecx, 0x88736b0b
je 0x407759
cmp ecx, 0x89f6cd2e
jne 0x406270
mov ecx, 0x3af17136
jmp 0x406270
cmp ecx, 0x20b35bbf
je 0x40778b
cmp ecx, 0x20dec33a
je 0x406228
cmp ecx, 0x267e9218
jne 0x406270
mov eax, dword [esi + 0x68]
mov dword [esi + 0x1c], eax
mov eax, dword [0x4ad3c8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
cmp dword [0x4ad3c4], 0xa
setge cl
mov edx, ecx
or cl, al
xor dl, al
xor cl, 1
mov eax, 0x65e21169
or cl, dl
mov ecx, 0xdf379ca1
mov edx, 0xab64d601
cmovne eax, ecx
mov ecx, 0x65e21169
cmovne ecx, edx
mov edx, 0x919ee8e6
nop word cs:[eax + eax]
cmp edx, 0xab64d600
jle 0x406c60
cmp edx, 0xab64d601
je 0x406c80
cmp edx, 0xdf379ca1
je 0x407795
cmp edx, 0x65e21169
jne 0x406c30
mov edx, dword [esi + 0xc]
mov edx, 0xab64d601
jmp 0x406c30
cmp edx, 0x90626719
je 0x406c8b
cmp edx, 0x919ee8e6
jne 0x406c30
mov edx, dword [esi + 0x1c]
add edx, 0x38
mov dword [esi + 0xc], edx
mov edx, 0x90626719
jmp 0x406c30
mov edx, dword [esi + 0xc]
mov edx, dword [edx]
mov dword [esi], edx
mov edx, eax
jmp 0x406c30
mov edx, ecx
jmp 0x406c30
cmp ecx, 0xd3c7f28a
je 0x407854
cmp ecx, 0xd531e586
je 0x407878
cmp ecx, 0xd6656f87
jne 0x406270
mov ecx, 0xc8c13978
jmp 0x406270
cmp ecx, 0x67bb8f44
je 0x407882
cmp ecx, 0x69e3f9e0
je 0x4078a3
cmp ecx, 0x6ab263d3
jne 0x406270
mov eax, dword [0x4ad3d0]
mov edi, 0x72301188
mov ebx, 0x6173b31
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x6173b31
jmp 0x406249
cmp ecx, 0xabe807c3
je 0x4078c3
cmp ecx, 0xaf7c6770
je 0x40797f
cmp ecx, 0xb0726932
jne 0x406270
mov edx, dword [0x4ad3d0]
mov eax, dword [0x4ad3cc]
mov edi, 0x498cbbab
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, 0x85a22270
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
mov edi, dword [esi + 0x5c]
cmovge ecx, edx
mov edx, dword [esi + 0x58]
mov dword [esi + 0x50], edi
mov dword [esi + 0x54], edx
jmp 0x406270
cmp ecx, 0xada9fd7
je 0x407994
cmp ecx, 0xd6f7413
je 0x4079bb
cmp ecx, 0x13a93d61
jne 0x406270
mov eax, dword [esi + 8]
mov edx, 0xab64d601
mov eax, dword [eax]
mov ecx, dword [eax]
add eax, dword [ecx + 4]
mov dword [esi + 0x1c], eax
mov eax, dword [0x4ad3c8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x4ad3c4], 0xa
setl cl
or cl, al
mov eax, 0x65e21169
mov ecx, 0xdf379ca1
cmovne eax, ecx
mov ecx, 0x65e21169
cmovne ecx, edx
mov edx, 0x919ee8e6
nop dword [eax]
cmp edx, 0xab64d600
jle 0x406e20
cmp edx, 0xab64d601
je 0x406e40
cmp edx, 0xdf379ca1
je 0x4079d0
cmp edx, 0x65e21169
jne 0x406df0
mov edx, dword [esi + 0xc]
mov edx, 0xab64d601
jmp 0x406df0
cmp edx, 0x90626719
je 0x406e4b
cmp edx, 0x919ee8e6
jne 0x406df0
mov edx, dword [esi + 0x1c]
add edx, 0x38
mov dword [esi + 0xc], edx
mov edx, 0x90626719
jmp 0x406df0
mov edx, dword [esi + 0xc]
mov edx, dword [edx]
mov dword [esi], edx
mov edx, eax
jmp 0x406df0
mov edx, ecx
jmp 0x406df0
cmp ecx, 0xcc093786
je 0x4079f5
cmp ecx, 0xcdbdf869
jne 0x406270
mov eax, dword [esi + 0xe8]
mov ecx, dword [esi + 0xec]
mov edx, dword [esi + 0x10]
add eax, 0xffffffff
adc ecx, 0xffffffff
mov dword [edx], eax
mov dword [edx + 4], ecx
mov ecx, 0xce842ed0
jmp 0x406270
cmp ecx, 0x52d71d2c
je 0x407a32
cmp ecx, 0x57625412
jne 0x406270
mov edx, dword [0x4ad3d0]
mov eax, dword [0x4ad3cc]
mov edi, 0x774aafdd
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, 0x2da5edd8
jmp 0x407bf6
cmp ecx, 0x9ca94c1b
je 0x407a4a
cmp ecx, 0x9d3018d6
jne 0x406270
mov ecx, 0xd6656f87
jmp 0x406270
cmp ecx, 0x2eb99bba
je 0x407af4
cmp ecx, 0x2f67f9d5
jne 0x406270
mov edx, dword [0x4ad3d0]
mov eax, dword [0x4ad3cc]
mov edi, 0x6ac2a7c5
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, 0x9c05b16b
jmp 0x407bf6
cmp ecx, 0xe37a93c8
je 0x407b38
cmp ecx, 0xe60c8dee
jne 0x406270
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov ecx, dword [eax]
mov ecx, dword [ecx + 4]
lea eax, [eax + ecx + 0x20]
mov ecx, 0x7175ba89
nop dword [eax]
cmp ecx, 0x7175ba89
je 0x406f85
cmp ecx, 0xcea19657
jne 0x406f70
jmp 0x407b8b
mov ecx, 0xcea19657
jmp 0x406f70
cmp ecx, 0x74b45cf5
je 0x407b99
cmp ecx, 0x762b7e8c
jne 0x406270
mov eax, dword [esi + 0x80]
mov ecx, 0xb0726932
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 0x84]
mov dword [esi + 0x58], eax
jmp 0x406270
cmp ecx, 0xc1f71857
je 0x407ba3
cmp ecx, 0xc26653d9
jne 0x406270
mov edx, dword [0x4ad3d0]
mov eax, dword [0x4ad3cc]
mov edi, 0x51fffb90
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, 0x74b45cf5
cmovne edi, ebx
test edx, ecx
mov ecx, edi
cmove ecx, ebx
cmp eax, 0xa
mov eax, dword [esi + 4]
cmovge ecx, edi
mov eax, dword [eax]
mov dword [esi + 0xa8], eax
jmp 0x406270
cmp ecx, 0x638d4dc
je 0x407bad
cmp ecx, 0xa01e1e2
jne 0x406270
mov ecx, 0x17d7eed2
jmp 0x406270
cmp ecx, 0xc5eea59f
je 0x407bbf
cmp ecx, 0xc78d9672
jne 0x406270
mov eax, dword [esi + 0x10]
mov ecx, 0xe37a93c8
jmp 0x406270
cmp ecx, 0x4accde7a
je 0x407bc9
cmp ecx, 0x4c934f79
jne 0x406270
mov eax, dword [esi + 0x3c]
mov ecx, dword [esi + 0x60]
lea eax, [eax + ecx + 0x20]
mov ecx, 0x7175ba89
nop word cs:[eax + eax]
cmp ecx, 0x7175ba89
je 0x4070b5
cmp ecx, 0xcea19657
jne 0x4070a0
jmp 0x407c0b
mov ecx, 0xcea19657
jmp 0x4070a0
cmp ecx, 0x93be0657
je 0x407c1c
cmp ecx, 0x94a941bf
jne 0x406270
mov eax, dword [esi + 4]
mov ecx, 0x3f0146b8
mov eax, dword [eax]
mov dword [esi + 0xbc], eax
jmp 0x406270
cmp ecx, 0x2aa045fb
je 0x407c4a
cmp ecx, 0x2d0536ea
jne 0x406270
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov ecx, dword [eax]
mov ecx, dword [ecx + 4]
lea eax, [eax + ecx + 0x20]
mov ecx, 0x7175ba89
nop word cs:[eax + eax]
cmp ecx, 0x7175ba89
je 0x407135
cmp ecx, 0xcea19657
jne 0x407120
jmp 0x407c68
mov ecx, 0xcea19657
jmp 0x407120
cmp ecx, 0xda368aab
je 0x407c9f
cmp ecx, 0xdc0f8304
jne 0x406270
mov ecx, 0x3af17136
jmp 0x406270
cmp ecx, 0x72301188
je 0x407cb6
cmp ecx, 0x72f73569
jne 0x406270
cmp byte [esi + 0x28], 0
mov ecx, 0xa1593259
mov eax, 0xda368aab
cmovne ecx, eax
jmp 0x406270
cmp ecx, 0xb6ed5a99
je 0x407ce5
cmp ecx, 0xb713bc2a
jne 0x406270
mov eax, dword [esi + 0x30]
mov eax, dword [esi + 0x30]
mov eax, dword [esi + 0x30]
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x40]
lea eax, [ecx + eax + 0x20]
mov ecx, 0x7175ba89
nop dword [eax]
cmp ecx, 0x7175ba89
je 0x4071d5
cmp ecx, 0xcea19657
jne 0x4071c0
jmp 0x407d00
mov ecx, 0xcea19657
jmp 0x4071c0
cmp ecx, 0x17d7eed2
je 0x407d11
cmp ecx, 0x18bbec9f
jne 0x406270
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0x78]
mov dword [eax], ecx
mov ecx, 0x93be0657
jmp 0x406270
cmp ecx, 0xd29b927f
je 0x407d1b
cmp ecx, 0xd305bf12
jne 0x406270
mov ecx, 0xf46d14ba
jmp 0x406270
cmp ecx, 0x5f5ed3a2
je 0x407d25
cmp ecx, 0x5f95b895
jne 0x406270
mov dword [esi + 0x5c], 0
mov ecx, 0xb0726932
mov dword [esi + 0x58], 0
jmp 0x406270
cmp ecx, 0xa3be9659
je 0x407d2f
cmp ecx, 0xa9485b31
jne 0x406270
mov eax, dword [esi + 0x68]
mov ecx, dword [0x4ad3c8]
mov dword [esi + 0x1c], eax
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete cl
cmp dword [0x4ad3c4], 0xa
setge dl
setl ch
or dl, al
xor ch, cl
mov eax, 0x65e21169
not dl
or dl, ch
mov ecx, 0xdf379ca1
test dl, 1
mov edx, 0xab64d601
cmovne eax, ecx
mov ecx, 0x65e21169
cmovne ecx, edx
mov edx, 0x919ee8e6
nop
cmp edx, 0xab64d600
jle 0x4072f0
cmp edx, 0xab64d601
je 0x407310
cmp edx, 0xdf379ca1
je 0x407d4b
cmp edx, 0x65e21169
jne 0x4072c0
mov edx, dword [esi + 0xc]
mov edx, 0xab64d601
jmp 0x4072c0
cmp edx, 0x90626719
je 0x40731b
cmp edx, 0x919ee8e6
jne 0x4072c0
mov edx, dword [esi + 0x1c]
add edx, 0x38
mov dword [esi + 0xc], edx
mov edx, 0x90626719
jmp 0x4072c0
mov edx, dword [esi + 0xc]
mov edx, dword [edx]
mov dword [esi], edx
mov edx, eax
jmp 0x4072c0
mov edx, ecx
jmp 0x4072c0
cmp ecx, 0x3d563dd4
je 0x407e04
cmp ecx, 0x3f0146b8
jne 0x406270
cmp dword [esi + 0xbc], 0
mov ecx, 0xd19d4c89
sete byte [esi + 0x2a]
jmp 0x406270
cmp ecx, 0xeb5970ab
je 0x407e0e
cmp ecx, 0xee4d5d7e
jne 0x406270
cmp byte [esi + 0x2b], 0
mov ecx, 0xd6656f87
mov eax, 0x13a93d61
cmovne ecx, eax
jmp 0x406270
cmp ecx, 0x7c5ca7f0
je 0x407e3c
cmp ecx, 0x7c86cec5
jne 0x406270
mov edx, dword [0x4ad3d0]
mov eax, dword [0x4ad3cc]
mov edi, 0x4accde7a
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, 0x99cf915f
jmp 0x407b22
cmp ecx, 0xb86d15ed
jne 0x40808c
mov edi, dword [esi + 0xd0]
mov edx, dword [esi + 0x7c]
mov eax, dword [esi + 4]
mov ebx, 0x21b0407d
mov ecx, dword [eax]
mov eax, edx
mov byte [esi + 0xc], 0
nop word [eax + eax]
cmp ebx, 0x3b07d555
je 0x407e52
cmp ebx, 0x21b0407d
jne 0x4073f0
movzx edx, byte [esi + 0xc]
mov ebx, 0x3b07d555
jmp 0x4073f0
mov ecx, dword [esi + 0x64]
add ecx, dword [esi + 0x9c]
call fcn.0040f940
not eax
mov ecx, 0x7c86cec5
mov edx, 0xaf7c6770
or eax, 0xfffffe3f
cmp eax, 0xffffffbf
cmove ecx, edx
jmp 0x406270
mov eax, dword [0x4ad3d0]
mov ebx, 0xe6928de6
mov edi, 0xa3be9659
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0xa3be9659
jmp 0x407eb3
mov ecx, 0x4accde7a
jmp 0x406270
mov eax, dword [esi + 0x3c]
mov ecx, 0x88736b0b
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov dword [esi + 0x60], eax
jmp 0x406270
cmp byte [esi + 0x25], 0
mov ecx, 0x5e5405aa
jmp 0x407602
mov ecx, 0xcdbdf869
jmp 0x406270
xor eax, eax
cmp eax, dword [esi + 0xe0]
mov eax, 0
mov ecx, 0xee4d5d7e
sbb eax, dword [esi + 0xe4]
setl byte [esi + 0x2b]
jmp 0x406270
mov eax, dword [esi + 0x3c]
mov ecx, dword [esi + 0x60]
lea eax, [eax + ecx + 0x20]
mov ecx, 0x7175ba89
nop word cs:[eax + eax]
cmp ecx, 0x7175ba89
je 0x4074e5
cmp ecx, 0xcea19657
jne 0x4074d0
jmp 0x407e7c
mov ecx, 0xcea19657
jmp 0x4074d0
mov ecx, 0x69e3f9e0
jmp 0x406270
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x50]
mov edx, dword [esi + 0x54]
mov dword [eax], ecx
mov dword [eax + 4], edx
mov eax, dword [esi + 0x18]
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0x18]
push dword [eax]
call fcn.0040f030
mov ecx, dword [esi + 0x18]
call fcn.0040f710
mov byte [esi + 0x27], al
mov eax, dword [0x4ad3d0]
mov ebx, 0x7c5ca7f0
mov edi, 0x85a22270
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x85a22270
jmp 0x407eb3
push dword [esi + 0xa0]
push dword [esi + 0xa4]
call fcn.0040fb70
add esp, 8
test al, al
mov ecx, 0xd29b927f
mov edx, 0xada9fd7
cmovne ecx, edx
jmp 0x406270
mov ecx, 0x8e75e53c
jmp 0x406270
mov eax, dword [esi + 4]
mov ecx, 0xeb0df2d3
jmp 0x406270
mov eax, dword [esi + 4]
mov ecx, 0x9c05b16b
jmp 0x406270
mov eax, dword [esi + 0x98]
mov ecx, 0xc81c8f5d
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov dword [esi + 0x9c], eax
jmp 0x406270
mov eax, dword [esi + 8]
mov ecx, 0xb2a21d81
mov eax, dword [eax]
mov dword [esi + 0x64], eax
mov eax, dword [esi + 0x64]
mov dword [esi + 0x98], eax
jmp 0x406270
mov ecx, 0xf46d14ba
jmp 0x406270
mov eax, dword [0x4ad3d0]
mov ebx, 0x46e2ecf8
mov edi, 0xbde79658
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0xbde79658
jmp 0x407eb3
cmp byte [esi + 0x26], 0
mov ecx, 0x42b7cd71
mov eax, 0x5f95b895
cmovne ecx, eax
jmp 0x406270
mov eax, dword [esi + 0x10]
mov ecx, 0x67bb8f44
vmovsd xmm0, qword [eax]
vmovsd qword [esi + 0xd8], xmm0
jmp 0x406270
mov ecx, dword [esi + 0x4c]
add ecx, dword [esi + 0x48]
push 0
push 0
call fcn.00410340
mov eax, dword [0x4ad3d0]
mov edi, 0xc58d532c
mov ebx, 0xa3be9659
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0xa3be9659
jmp 0x406249
mov eax, dword [esi + 0x34]
mov eax, dword [esi + 0x34]
mov eax, dword [esi + 0x34]
mov ecx, 0x2da5edd8
jmp 0x406270
mov eax, dword [0x4ad3d0]
mov edi, 0xeb0df2d3
mov ebx, 0xd90fd517
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0xd90fd517
jmp 0x406249
mov eax, dword [esi + 0x10]
mov ecx, 0xbd06fbb4
vmovsd xmm0, qword [eax]
vmovsd qword [esi + 0xe0], xmm0
jmp 0x406270
mov ecx, 0x482b2fc4
jmp 0x406270
mov eax, dword [esi + 0xcc]
mov ecx, 0x50b3903d
mov eax, dword [eax]
mov dword [esi + 0x4c], eax
jmp 0x406270
mov ecx, 0x90141320
jmp 0x406270
mov eax, dword [esi + 8]
mov ecx, 0x173d365e
mov eax, dword [eax]
mov dword [esi + 0x40], eax
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov dword [esi + 0x30], eax
jmp 0x406270
mov edx, dword [0x4ad3d0]
mov eax, dword [0x4ad3cc]
mov edi, 0xdc0f8304
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, 0xbde79658
jmp 0x407b22
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x50]
mov edx, dword [esi + 0x54]
mov dword [eax], ecx
mov dword [eax + 4], edx
mov eax, dword [esi + 0x18]
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0x18]
push dword [eax]
call fcn.0040f030
mov ecx, dword [esi + 0x18]
call fcn.0040f710
mov ecx, 0x498cbbab
jmp 0x406270
mov edx, dword [0x4ad3d0]
mov eax, dword [0x4ad3cc]
mov edi, 0x4c934f79
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, 0x5e4fcc2
jmp 0x407bf6
mov ecx, 0x69e3f9e0
jmp 0x406270
mov eax, dword [esi]
mov edi, 0x38a8763b
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 8]
mov ecx, dword [0x4ad3c0]
lea edx, [ecx + 1]
mov eax, dword [eax]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
setne cl
sete dl
cmp dword [0x4ad3bc], 0xa
setge dh
setl bl
or dh, cl
mov ecx, dword [eax]
xor bl, dl
xor dh, 1
or dh, bl
mov edx, 0x44c0639e
mov ebx, 0x44c0639e
cmovne edx, edi
mov edi, 0xb1c45f09
cmovne ebx, edi
mov edi, 0x44175196
mov ecx, dword [ecx + 4]
nop word cs:[eax + eax]
cmp edi, 0x38a8763a
jle 0x407830
cmp edi, 0x38a8763b
je 0x407845
cmp edi, 0x44175196
je 0x40784c
cmp edi, 0x44c0639e
jne 0x407800
mov edi, 0xb1c45f09
jmp 0x407800
cmp edi, 0xb1c45f09
je 0x407850
cmp edi, 0xd2c22c49
jne 0x407800
jmp 0x407ed0
mov edi, 0xd2c22c49
jmp 0x407800
mov edi, ebx
jmp 0x407800
mov edi, edx
jmp 0x407800
mov eax, dword [esi + 0x10]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
add ecx, 0xffffffff
adc eax, 0xffffffff
mov dword [esi + 0x88], ecx
mov ecx, 0x2aa045fb
mov dword [esi + 0x8c], eax
jmp 0x406270
mov ecx, 0x6ab263d3
jmp 0x406270
xor eax, eax
cmp eax, dword [esi + 0xd8]
mov eax, 0
mov ecx, 0x72f73569
sbb eax, dword [esi + 0xdc]
setl byte [esi + 0x28]
jmp 0x406270
mov eax, dword [esi + 8]
mov ecx, 0xb86d15ed
mov eax, dword [eax]
mov dword [esi + 0x7c], eax
mov eax, dword [esi + 0x7c]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov dword [esi + 0xd0], eax
jmp 0x406270
mov eax, dword [esi + 0xb8]
mov ecx, dword [0x4ad3c8]
mov dword [esi + 0x1c], eax
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete cl
cmp dword [0x4ad3c4], 0xa
setge dl
setl ch
or dl, al
xor ch, cl
mov eax, 0x65e21169
not dl
or dl, ch
mov ecx, 0xdf379ca1
test dl, 1
mov edx, 0xab64d601
cmovne eax, ecx
mov ecx, 0x65e21169
cmovne ecx, edx
mov edx, 0x919ee8e6
nop word cs:[eax + eax]
cmp edx, 0xab64d600
jle 0x407950
cmp edx, 0xab64d601
je 0x407970
cmp edx, 0xdf379ca1
je 0x407f33
cmp edx, 0x65e21169
jne 0x407920
mov edx, dword [esi + 0xc]
mov edx, 0xab64d601
jmp 0x407920
cmp edx, 0x90626719
je 0x40797b
cmp edx, 0x919ee8e6
jne 0x407920
mov edx, dword [esi + 0x1c]
add edx, 0x38
mov dword [esi + 0xc], edx
mov edx, 0x90626719
jmp 0x407920
mov edx, dword [esi + 0xc]
mov edx, dword [edx]
mov dword [esi], edx
mov edx, eax
jmp 0x407920
mov edx, ecx
jmp 0x407920
mov eax, dword [esi + 4]
mov ecx, 0xd6f7413
mov eax, dword [eax]
mov dword [esi + 0xb0], eax
jmp 0x406270
mov eax, dword [0x4ad3d0]
mov ebx, 0xc26653d9
mov edi, 0x51fffb90
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x51fffb90
jmp 0x407eb3
cmp dword [esi + 0xb0], 0
mov ecx, 0xbc3d127c
sete byte [esi + 0x29]
jmp 0x406270
mov eax, dword [esi]
mov ecx, 0xd9afa967
mov dword [esi + 0xc0], eax
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov dword [esi + 0x74], eax
mov eax, dword [esi + 0x74]
mov eax, dword [eax]
mov dword [esi + 0xc4], eax
jmp 0x406270
mov eax, dword [esi + 0x44]
mov ecx, dword [esi + 4]
mov edi, 0x52d71d2c
or eax, 4
mov dword [ecx], eax
mov edx, dword [0x4ad3d0]
mov eax, dword [0x4ad3cc]
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, 0x5f5ed3a2
jmp 0x407bf6
mov eax, dword [esi + 0x44]
mov eax, dword [esi + 0x44]
mov ecx, dword [esi + 4]
or eax, 4
mov dword [ecx], eax
mov ecx, 0xcc093786
jmp 0x406270
mov eax, dword [esi + 0xc8]
mov edx, dword [0x4ad3c0]
mov edi, 0xb1c45f09
lea ecx, [edx + 1]
imul ecx, edx
test cl, 1
sete dl
cmp dword [0x4ad3bc], 0xa
setge dh
setl bl
or dh, cl
xor bl, dl
mov ecx, 0x44c0639e
not dh
or dh, bl
test dh, 1
mov edx, 0x38a8763b
cmovne ecx, edx
mov edx, 0x44c0639e
cmovne edx, edi
mov edi, 0x44175196
nop dword [eax]
cmp edi, 0x38a8763a
jle 0x407ad0
cmp edi, 0x38a8763b
je 0x407ae5
cmp edi, 0x44175196
je 0x407aec
cmp edi, 0x44c0639e
jne 0x407aa0
mov edi, 0xb1c45f09
jmp 0x407aa0
cmp edi, 0xb1c45f09
je 0x407af0
cmp edi, 0xd2c22c49
jne 0x407aa0
jmp 0x407f63
mov edi, 0xd2c22c49
jmp 0x407aa0
mov edi, edx
jmp 0x407aa0
mov edi, ecx
jmp 0x407aa0
mov edx, dword [0x4ad3d0]
mov eax, dword [0x4ad3cc]
mov edi, 0x93be0657
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, 0x18bbec9f
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
cmp eax, 0xa
cmovge ecx, edx
jmp 0x406270
mov edx, dword [0x4ad3d0]
mov eax, dword [0x4ad3cc]
mov edi, 0x7444ca44
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, 0xc78d9672
cmovne edx, edi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, edi
mov edi, dword [esi + 0x10]
cmp eax, 0xa
cmovge ecx, edx
vmovsd xmm0, qword [edi]
vmovsd qword [esi + 0xe8], xmm0
jmp 0x406270
mov dword [esi], eax
mov ecx, 0x2d0536ea
mov eax, dword [esi]
jmp 0x406270
mov ecx, 0x4a751eeb
jmp 0x406270
mov ecx, 0x2eb99bba
jmp 0x406270
mov eax, dword [esi + 4]
mov ecx, 0x57625412
mov eax, dword [eax]
mov dword [esi + 0x34], eax
jmp 0x406270
mov ecx, 0xb34bb821
jmp 0x406270
mov edx, dword [0x4ad3d0]
mov eax, dword [0x4ad3cc]
mov edi, 0x99cf915f
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, 0x89f6cd2e
cmovne edi, ebx
test edx, ecx
mov ecx, edi
cmove ecx, ebx
cmp eax, 0xa
cmovge ecx, edi
jmp 0x406270
mov dword [esi], eax
mov ecx, 0x5e4fcc2
mov eax, dword [esi]
mov eax, dword [esi + 0x14]
jmp 0x406270
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0x78]
mov edi, 0x9d3018d6
mov ebx, 0x18bbec9f
mov dword [eax], ecx
mov eax, dword [0x4ad3d0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x18bbec9f
jmp 0x406249
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x88]
mov edx, dword [esi + 0x8c]
mov dword [eax], ecx
mov dword [eax + 4], edx
mov ecx, 0x58fe1c39
jmp 0x406270
mov dword [esi], eax
mov ebx, 0xe1ed0db5
mov edi, 0xe60c8dee
mov eax, dword [esi]
mov ecx, dword [eax + 4]
cmp dword [eax], 1
mov eax, dword [0x4ad3d0]
sbb ecx, 0
lea ecx, [eax + 1]
setl byte [esi + 0x25]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0xe60c8dee
jmp 0x407eb3
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov ecx, dword [eax]
add eax, dword [ecx + 4]
mov ecx, 0x20dec33a
mov dword [esi + 0x68], eax
jmp 0x406270
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0x70]
mov ebx, 0xa01e1e2
mov edi, 0x6173b31
mov dword [eax], ecx
mov eax, dword [0x4ad3d0]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x6173b31
jmp 0x407eb3
mov eax, dword [esi + 8]
mov ecx, 0x7464a749
mov eax, dword [eax]
mov dword [esi + 0x6c], eax
mov eax, dword [esi + 0x6c]
mov dword [esi + 0xb4], eax
jmp 0x406270
mov dword [esi], eax
mov ecx, 0xeb5970ab
mov eax, dword [esi]
mov eax, dword [esi + 0x14]
jmp 0x406270
mov ecx, 0x94a941bf
jmp 0x406270
mov ecx, 0xd3c7f28a
jmp 0x406270
mov ecx, 0x20b35bbf
jmp 0x406270
mov eax, dword [esi + 0x4c]
mov ecx, dword [esi + 0x4c]
add ecx, dword [esi + 0x48]
push 0
push 0
call fcn.00410340
mov ecx, 0xe6928de6
jmp 0x406270
mov eax, dword [esi]
mov edi, 0x38a8763b
mov ebx, 0x44c0639e
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 8]
mov ecx, dword [0x4ad3c0]
lea edx, [ecx + 1]
mov eax, dword [eax]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
setne cl
cmp dword [0x4ad3bc], 0xa
setge dl
mov dh, dl
or dl, cl
xor dh, cl
mov ecx, dword [eax]
xor dl, 1
or dl, dh
mov edx, 0x44c0639e
cmovne edx, edi
mov edi, 0xb1c45f09
cmovne ebx, edi
mov edi, 0x44175196
mov ecx, dword [ecx + 4]
nop word cs:[eax + eax]
cmp edi, 0x38a8763a
jle 0x407de0
cmp edi, 0x38a8763b
je 0x407df5
cmp edi, 0x44175196
je 0x407dfc
cmp edi, 0x44c0639e
jne 0x407db0
mov edi, 0xb1c45f09
jmp 0x407db0
cmp edi, 0xb1c45f09
je 0x407e00
cmp edi, 0xd2c22c49
jne 0x407db0
jmp 0x407f92
mov edi, 0xd2c22c49
jmp 0x407db0
mov edi, ebx
jmp 0x407db0
mov edi, edx
jmp 0x407db0
mov ecx, 0x29de36a5
jmp 0x406270
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x40]
lea eax, [ecx + eax + 0x20]
mov ecx, 0x7175ba89
nop dword [eax]
cmp ecx, 0x7175ba89
je 0x407e35
cmp ecx, 0xcea19657
jne 0x407e20
jmp 0x407faa
mov ecx, 0xcea19657
jmp 0x407e20
cmp byte [esi + 0x27], 0
mov ecx, 0x2f67f9d5
mov eax, 0x16940bd8
cmovne ecx, eax
jmp 0x406270
add eax, edi
mov edi, 0x8d3b679d
nop dword [eax]
cmp edi, 0x8d3b679d
je 0x407e75
cmp edi, 0xc9e24ece
jne 0x407e60
jmp 0x408023
mov edi, 0xc9e24ece
jmp 0x407e60
mov dword [esi], eax
mov ebx, 0x9edbebd9
mov edi, 0x4c934f79
mov eax, dword [esi]
mov ecx, dword [eax]
mov edx, dword [esi + 0x14]
cmp dword [edx], ecx
mov ecx, dword [edx + 4]
sbb ecx, dword [eax + 4]
mov eax, dword [0x4ad3d0]
setge byte [esi + 0x26]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x4c934f79
sete al
cmove ecx, ebx
cmp dword [0x4ad3cc], 0xa
setl dl
cmovge ecx, edi
xor dl, al
cmovne ecx, ebx
jmp 0x406270
movsx eax, byte [eax + ecx + 0x40]
mov ecx, dword [esi + 0x2c]
push eax
call fcn.0040fcb0
mov edi, dword [0x4ad3d0]
mov edx, dword [0x4ad3cc]
mov dword [esi + 0xa0], eax
mov dword [esi + 0xa4], 0xffffffff
lea ecx, [edi + 1]
imul ecx, edi
mov edi, 0xa9485b31
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0x26eb2572
cmovne edi, ebx
cmp ecx, 0xffffffff
mov ecx, edi
cmove ecx, ebx
cmp edx, 0xa
cmovge ecx, edi
jmp 0x406270
mov ecx, dword [esi]
mov eax, dword [esi + 0x14]
mov edx, dword [esi + 0x38]
push dword [eax + 4]
push dword [eax]
push dword [edx]
call fcn.00410120
mov ecx, dword [esi + 0x14]
xor edx, dword [ecx + 4]
xor eax, dword [ecx]
mov ecx, 0xbbedf5b3
or eax, edx
mov eax, 0x94a941bf
cmove ecx, eax
jmp 0x406270
movsx eax, byte [eax + 0x40]
mov ecx, dword [esi + 0xc0]
push eax
call fcn.0040fcb0
push eax
push 0xffffffffffffffff
call fcn.0040fb70
add esp, 8
test al, al
mov ecx, 0x871790
mov edx, 0x638d4dc
cmovne ecx, edx
jmp 0x406270
movsx eax, byte [eax + ecx + 0x40]
mov ecx, dword [esi + 0x2c]
push eax
call fcn.0040fcb0
mov ecx, 0x267e9218
jmp 0x406270
mov edi, dword [0x4ad3d0]
mov edx, dword [0x4ad3cc]
mov dword [esi], eax
lea ecx, [edi + 1]
imul ecx, edi
mov edi, 0xb713bc2a
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0xc59c5041
cmovne edi, ebx
cmp ecx, 0xffffffff
mov ecx, edi
cmove ecx, ebx
cmp edx, 0xa
mov edx, dword [esi]
mov ebx, 0x39f9c8e0
cmovge ecx, edi
mov edi, 0x72c8b3aa
mov eax, dword [edx]
mov edx, dword [edx + 4]
add eax, ebx
adc edx, edi
mov edi, dword [esi + 0x14]
sub eax, dword [edi]
sbb edx, dword [edi + 4]
sub eax, ebx
mov dword [esi + 0x80], eax
mov eax, 0x72c8b3aa
sbb edx, eax
mov dword [esi + 0x84], edx
jmp 0x406270
mov dh, dl
mov dword [esi], eax
xor ebx, ebx
xor dh, 0xfe
test dh, dl
mov edx, dword [esi]
mov dword [esi + 0x2c], eax
setne bl
mov edi, dword [edx + 0xc]
mov edx, edi
not edx
and edi, 0x23057fe4
mov eax, edx
and eax, 0xdcfa801b
or edi, eax
mov eax, ecx
not eax
and ecx, 0x23057fe4
or edx, eax
and eax, 0xdcfa801b
or ecx, eax
not edx
xor ecx, edi
or edx, ecx
mov ecx, dword [esi + 0x2c]
push ebx
push edx
call fcn.00411b80
mov eax, dword [esi + 8]
mov eax, dword [eax]
mov dword [esi + 0xd4], eax
mov ecx, dword [esi + 0x18]
call fcn.00410580
mov ecx, 0xbb6789ae
jmp 0x406270
cmp ecx, 0xbb6789ae
jne 0x406270
mov eax, dword [esi + 0x18]
mov eax, dword [esi + 0x10]
mov eax, dword [esi + 0x14]
mov eax, dword [esi + 4]
mov edi, dword [esi + 0xd4]
mov ecx, dword [esi + 0xf0]
xor ecx, ebp
call fcn.00438170
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret