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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x108
mov eax, dword [0x4ac2c0]
mov ecx, 0xd41cf4d3
xor eax, ebp
mov dword [esp + 0x100], eax
mov dword [esp + 0x10], 0
jmp 0x4057e0
mov eax, dword [0x4ae400]
mov edi, 0x28f18f24
mov esi, 0x6429809e
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x6429809e
sete al
cmove ecx, edi
cmp dword [0x4ae3fc], 0xa
setl dl
cmovge ecx, esi
xor dl, al
cmovne ecx, edi
nop word cs:[eax + eax]
cmp ecx, 0xea614e5f
jle 0x405840
cmp ecx, 0x37c985bf
jle 0x4058e0
cmp ecx, 0x5074d8db
jle 0x405992
cmp ecx, 0x67a0400a
jle 0x405af2
cmp ecx, 0x76569dfb
jg 0x405d7e
cmp ecx, 0x6d79697d
jg 0x4062e6
cmp ecx, 0x67a0400b
je 0x406915
cmp ecx, 0x67f5e540
jne 0x4057e0
mov ecx, 0xe59c4092
jmp 0x4057e0
cmp ecx, 0xbca85390
jle 0x405940
cmp ecx, 0xd353d725
jle 0x4059d8
cmp ecx, 0xdf825696
jle 0x405b2c
cmp ecx, 0xe6db8b2d
jg 0x405dc6
cmp ecx, 0xe1adf242
jg 0x406325
cmp ecx, 0xdf825697
je 0x4069c9
cmp ecx, 0xdff91140
jne 0x4057e0
mov eax, dword [esp + 0x1c]
mov ecx, 0x528e57f
mov edi, 0x528e57f
mov esi, 0xc36126af
mov edx, 0xc36126af
not edi
not esi
add eax, ecx
mov ecx, dword [esp + 0x18]
adc ecx, edx
add edi, eax
adc esi, ecx
mov dword [esp + 0x98], edi
mov ecx, 0xcffd70c0
mov dword [esp + 0x9c], esi
jmp 0x4057e0
cmp ecx, 0xe36e90f
jg 0x405a66
cmp ecx, 0xfe83ab7d
jle 0x405b77
cmp ecx, 0x6a082b4
jle 0x405df9
cmp ecx, 0xbd04086
jg 0x406357
cmp ecx, 0x6a082b5
je 0x406a38
cmp ecx, 0x6d472c2
jne 0x4057e0
mov eax, dword [esp + 0x10]
mov ecx, 0x2179d1a4
mov dword [esp + 0xd4], eax
jmp 0x4057e0
cmp ecx, 0xa1b91ce1
jg 0x405aac
cmp ecx, 0x91b85953
jg 0x405bbf
cmp ecx, 0x8508746c
jle 0x405e27
cmp ecx, 0x8e7da7a1
jg 0x406475
cmp ecx, 0x8508746d
je 0x406a42
cmp ecx, 0x879cdc0e
jne 0x4057e0
mov ecx, 0x91b85954
jmp 0x4057e0
cmp ecx, 0x47191735
jg 0x405c16
cmp ecx, 0x3dfb675c
jle 0x405ef2
cmp ecx, 0x3fa970c2
jg 0x4064b4
cmp ecx, 0x3dfb675d
je 0x406a9f
cmp ecx, 0x3f4484c0
jne 0x4057e0
mov ecx, 0xdefbd979
jmp 0x4057e0
cmp ecx, 0xc908443d
jg 0x405c7e
cmp ecx, 0xc020eee4
jle 0x405f20
cmp ecx, 0xc2a318fb
jg 0x4064d6
cmp ecx, 0xc020eee5
je 0x406ab6
cmp ecx, 0xc29ac8bd
jne 0x4057e0
mov eax, dword [esp + 0x38]
mov eax, dword [esp + 0x3c]
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov eax, dword [esp + 0x38]
mov eax, dword [esp + 0x3c]
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov eax, dword [esp + 0x38]
mov eax, dword [esp + 0x3c]
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov eax, dword [esp + 0x38]
mov eax, dword [esp + 0x3c]
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov ecx, 0x10c4a6eb
jmp 0x4057e0
cmp ecx, 0x1f5fa52f
jg 0x405cc6
cmp ecx, 0x170bc1ec
jle 0x405f5b
cmp ecx, 0x1b2ed2db
jg 0x4064f8
cmp ecx, 0x170bc1ed
je 0x406af8
cmp ecx, 0x1962c7f0
jne 0x4057e0
mov ecx, 0x551890e
jmp 0x4057e0
cmp ecx, 0xaf4bf2a5
jg 0x405d32
cmp ecx, 0xa866f2d3
jle 0x405fc3
cmp ecx, 0xab48830a
jg 0x40651a
cmp ecx, 0xa866f2d4
je 0x406b52
cmp ecx, 0xa9d456b2
jne 0x4057e0
mov ecx, 0xab48830b
jmp 0x4057e0
cmp ecx, 0x5bed6f46
jle 0x405ff1
cmp ecx, 0x611e0bb5
jg 0x406549
cmp ecx, 0x5bed6f47
je 0x406b7c
cmp ecx, 0x607d1048
jne 0x4057e0
mov ecx, 0x25682033
jmp 0x4057e0
cmp ecx, 0xdcc3ebc4
jle 0x40601f
cmp ecx, 0xde5157ce
jg 0x40656b
cmp ecx, 0xdcc3ebc5
je 0x406b91
cmp ecx, 0xde4d8188
jne 0x4057e0
mov eax, dword [esp + 0xec]
mov ecx, 0x5074d8dc
mov eax, dword [eax + 4]
mov dword [esp + 0xf0], eax
jmp 0x4057e0
cmp ecx, 0xf68276e6
jle 0x40606a
cmp ecx, 0xf77ec8a3
jg 0x4065b5
cmp ecx, 0xf68276e7
je 0x406b9b
cmp ecx, 0xf6e7b959
jne 0x4057e0
mov ecx, dword [ebp + 8]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
add eax, ecx
mov ecx, 0xe6db8b2e
mov dword [esp + 0x70], eax
jmp 0x4057e0
cmp ecx, 0x9745e9fb
jle 0x4060a3
cmp ecx, 0x9c834235
jg 0x406600
cmp ecx, 0x9745e9fc
je 0x406ba5
cmp ecx, 0x98a11957
jne 0x4057e0
mov eax, dword [0x4ae400]
mov esi, 0xde3f5e1
mov edi, 0xa43117c9
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0xa43117c9
jmp 0x407729
cmp ecx, 0x495dca7e
jle 0x406119
cmp ecx, 0x4b8b51c2
jg 0x40663e
cmp ecx, 0x495dca7f
je 0x406bbc
cmp ecx, 0x4a73ce5d
jne 0x4057e0
mov eax, dword [ebp + 8]
mov edi, 0xc908443e
mov esi, 0x495dca7f
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x4c]
mov eax, dword [eax]
mov dword [esp + 0x7c], eax
mov eax, dword [0x4ae400]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x495dca7f
jmp 0x4057be
cmp ecx, 0xcc66e8dd
jle 0x406164
cmp ecx, 0xcffd70bf
jg 0x40667c
cmp ecx, 0xcc66e8de
je 0x406bc6
cmp ecx, 0xcf22e4af
jne 0x4057e0
mov eax, dword [esp + 0xd8]
mov ecx, 0x4c74ce0d
or eax, 4
mov dword [esp + 0x10], eax
jmp 0x4057e0
cmp ecx, 0x28f18f23
jle 0x406247
cmp ecx, 0x312cd158
jg 0x4066cc
cmp ecx, 0x28f18f24
je 0x406be0
cmp ecx, 0x2fb00a92
jne 0x4057e0
mov edx, dword [ebp + 8]
mov eax, dword [edx]
mov ecx, dword [eax + 4]
add ecx, edx
push 0
push dword [esp + 0x14]
call fcn.00411680
mov eax, dword [0x4ae400]
mov edi, 0xbd04087
mov esi, 0xca5f8d75
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0xca5f8d75
jmp 0x4057be
cmp ecx, 0xb328a383
jle 0x40628d
cmp ecx, 0xb596c14f
jg 0x4066ee
cmp ecx, 0xb328a384
je 0x406c13
cmp ecx, 0xb4f513db
jne 0x4057e0
mov eax, dword [esp + 0xc0]
mov ecx, 0x54a29e14
mov edx, 0x6d472c2
cmp eax, 0x40
cmove ecx, edx
jmp 0x4057e0
cmp ecx, 0x7a62388f
jg 0x406710
cmp ecx, 0x76569dfc
je 0x406c37
cmp ecx, 0x7763e2ec
jne 0x4057e0
mov eax, dword [ebp + 8]
mov ecx, 0xde4d8188
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x84]
mov eax, dword [eax]
mov dword [esp + 0xec], eax
jmp 0x4057e0
cmp ecx, 0xe7dd04a0
jg 0x4067d2
cmp ecx, 0xe6db8b2e
je 0x406c57
cmp ecx, 0xe73eeaf1
jne 0x4057e0
cmp byte [esp + 0x22], 0
mov ecx, 0x7ac6dd94
jmp 0x406baf
cmp ecx, 0x551890d
jle 0x406801
cmp ecx, 0x551890e
je 0x406c99
cmp ecx, 0x585e3af
jne 0x4057e0
mov ecx, 0xd63b34b7
jmp 0x4057e0
cmp ecx, 0x810c318c
je 0x406cbd
cmp ecx, 0x8383e8ed
je 0x406d72
cmp ecx, 0x8425c776
jne 0x4057e0
mov edx, dword [ebp + 8]
mov edi, 0x2c95f60f
mov eax, dword [edx]
mov ecx, dword [eax + 4]
mov eax, dword [edx + ecx + 0x20]
mov ecx, dword [edx + ecx + 0x24]
mov edx, dword [0x4ae3f8]
lea esi, [edx + 1]
imul esi, edx
mov edx, esi
xor edx, 0xfffffffe
test edx, esi
mov esi, 0xc549be53
sete dl
cmp dword [0x4ae3f4], 0xa
setl dh
or dh, dl
mov edx, 0x2c95f60f
cmovne edx, esi
mov esi, 0x5d9dae0c
cmovne edi, esi
mov esi, 0xf39c4154
nop dword [eax]
cmp esi, 0x2c95f60e
jle 0x405ed0
cmp esi, 0x2c95f60f
je 0x405ee4
cmp esi, 0x67dfe5df
je 0x406d8c
cmp esi, 0x5d9dae0c
jne 0x405ea0
mov esi, edx
jmp 0x405ea0
cmp esi, 0xc549be53
je 0x405eeb
cmp esi, 0xf39c4154
jne 0x405ea0
mov esi, edi
jmp 0x405ea0
mov esi, 0x5d9dae0c
jmp 0x405ea0
mov esi, 0x67dfe5df
jmp 0x405ea0
cmp ecx, 0x37c985c0
je 0x406da4
cmp ecx, 0x3a50ec70
je 0x406dca
cmp ecx, 0x3c52ab4c
jne 0x4057e0
mov ecx, 0xf77ec8a4
jmp 0x4057e0
cmp ecx, 0xbca85391
je 0x406de4
cmp ecx, 0xbe710e8c
je 0x406dee
cmp ecx, 0xbf5f26f0
jne 0x4057e0
cmp dword [esp + 0xdc], 0
mov ecx, 0xac2f657f
sete byte [esp + 0x26]
jmp 0x4057e0
cmp ecx, 0xe36e910
je 0x406e92
cmp ecx, 0xf349d2c
je 0x406ec4
cmp ecx, 0x10c4a6eb
jne 0x4057e0
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov edi, 0xea614e60
mov esi, 0xc29ac8bd
sub eax, dword [esp + 0x28]
sbb ecx, dword [esp + 0x2c]
mov dword [esp + 0x88], eax
mov eax, dword [0x4ae400]
mov dword [esp + 0x8c], ecx
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0xc29ac8bd
jmp 0x4057be
cmp ecx, 0xa1b91ce2
je 0x406eea
cmp ecx, 0xa43117c9
je 0x406f11
cmp ecx, 0xa6825d91
jne 0x4057e0
mov ecx, 0x3fa970c3
jmp 0x4057e0
cmp ecx, 0x5074d8dc
je 0x407015
cmp ecx, 0x54a29e14
je 0x40579c
cmp ecx, 0x54b9ed31
jne 0x4057e0
mov ecx, 0xa866f2d4
jmp 0x4057e0
cmp ecx, 0xd353d726
je 0x407036
cmp ecx, 0xd41cf4d3
je 0x407040
cmp ecx, 0xd63b34b7
jne 0x4057e0
mov eax, dword [0x4ae400]
mov edi, 0x91b85954
mov esi, 0x879cdc0e
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x879cdc0e
jmp 0x4057be
cmp ecx, 0xea614e60
je 0x407061
cmp ecx, 0xec0091da
je 0x407081
cmp ecx, 0xecba1f9a
jne 0x4057e0
mov eax, dword [esp + 0xb8]
mov ecx, 0xf349d2c
mov dword [esp + 0x10], eax
jmp 0x4057e0
cmp ecx, 0x91b85954
je 0x4070a8
cmp ecx, 0x93bfc95e
je 0x4070f7
cmp ecx, 0x95b18165
jne 0x4057e0
mov edx, dword [0x4ae400]
mov eax, dword [0x4ae3fc]
mov esi, 0x8383e8ed
mov edi, 0x1b2ed2dc
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
cmovne esi, edi
test edx, ecx
mov ecx, esi
cmove ecx, edi
cmp eax, 0xa
mov eax, dword [esp + 0x60]
cmovge ecx, esi
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x18], eax
jmp 0x4057e0
cmp ecx, 0x47191736
je 0x407112
cmp ecx, 0x47f86398
je 0x40711c
cmp ecx, 0x48562b1b
jne 0x4057e0
mov eax, dword [0x4ae400]
mov edi, 0x3a50ec70
mov esi, 0x35755be4
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x35755be4
jmp 0x4057be
cmp ecx, 0xc908443e
je 0x4071c6
cmp ecx, 0xca5f8d75
je 0x4071d0
cmp ecx, 0xcc65eb5c
jne 0x4057e0
lea ecx, [esp + 0xf8]
push dword [ebp + 8]
call fcn.004107c0
mov edx, dword [0x4ae3f0]
movzx eax, byte [esp + 0xfc]
mov esi, 0x96c0cb08
lea ecx, [edx + 1]
imul ecx, edx
test cl, 1
sete dl
cmp dword [0x4ae3ec], 0xa
setge ah
setl dh
or ah, cl
xor dh, dl
mov ecx, 0xb88da275
not ah
or ah, dh
mov edx, 0x5b6fda7a
test ah, 1
cmovne ecx, edx
mov edx, 0xb88da275
cmovne edx, esi
mov esi, 0x69e1be49
nop dword [eax + eax]
cmp esi, 0xb88da274
jle 0x406220
cmp esi, 0xb88da275
je 0x406235
cmp esi, 0x5b6fda7a
je 0x40623c
cmp esi, 0x69e1be49
jne 0x4061f0
mov esi, edx
jmp 0x4061f0
cmp esi, 0x96c0cb08
je 0x406243
cmp esi, 0xaa75c5cb
jne 0x4061f0
jmp 0x4071ef
mov esi, 0x96c0cb08
jmp 0x4061f0
mov esi, 0xaa75c5cb
jmp 0x4061f0
mov esi, ecx
jmp 0x4061f0
cmp ecx, 0x1f5fa530
je 0x40721b
cmp ecx, 0x2179d1a4
je 0x407241
cmp ecx, 0x25682033
jne 0x4057e0
mov eax, dword [esp + 0xe0]
mov ecx, 0xe7dd04a1
mov eax, dword [eax + 4]
add eax, dword [esp + 0x80]
mov dword [esp + 0xe4], eax
jmp 0x4057e0
cmp ecx, 0xaf4bf2a6
je 0x407258
cmp ecx, 0xaf5d5e67
je 0x407262
cmp ecx, 0xb198d63f
jne 0x4057e0
mov edx, dword [esp + 0x10]
mov eax, edx
not eax
mov ecx, edx
and ecx, 0xd997902f
and eax, 0x26686fd0
or ecx, eax
mov eax, edx
and eax, 4
xor ecx, 0x26686fd4
or eax, ecx
mov ecx, 0x5bed6f47
mov dword [esp + 0xd0], eax
jmp 0x4057e0
cmp ecx, 0x6d79697e
je 0x407279
cmp ecx, 0x72727361
jne 0x4057e0
mov eax, dword [0x4ae400]
mov edi, 0x8508746d
mov esi, 0x312cd159
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x312cd159
jmp 0x4057be
cmp ecx, 0xe1adf243
je 0x40728e
cmp ecx, 0xe59c4092
jne 0x4057e0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x30], eax
mov ecx, 0x9f05fde2
jmp 0x4057e0
cmp ecx, 0xbd04087
je 0x4072b5
cmp ecx, 0xde3f5e1
jne 0x4057e0
mov edx, dword [0x4ae3e8]
mov ecx, dword [0x4ae3e4]
mov ebx, 0x73dd332a
lea eax, [edx + 1]
imul eax, edx
mov esi, eax
xor esi, 0xfffffffe
test esi, eax
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x355fb16d
cmovne edx, ebx
test esi, eax
mov eax, dword [esp + 0x7c]
mov esi, dword [eax + 4]
mov edi, dword [esp + 0x4c]
mov eax, edx
sete byte [esp + 0xc]
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edx
mov edx, 0xc70a6d5d
setl byte [esp + 0x14]
lea ecx, [edi + esi + 0x38]
nop dword [eax + eax]
cmp edx, 0x5ba4e989
jg 0x406400
cmp edx, 0xc70a6d5d
je 0x40641f
cmp edx, 0x355fb16d
je 0x40644d
cmp edx, 0x39f774b0
jne 0x4063d0
jmp 0x4072bf
cmp edx, 0x5ba4e98a
je 0x406457
cmp edx, 0x5dfb388e
je 0x406462
cmp edx, 0x73dd332a
jne 0x4063d0
mov edx, 0x5dfb388e
jmp 0x4063d0
movzx ebx, byte [esp + 0xc]
movzx edx, byte [esp + 0x14]
mov edi, 0x5ba4e98a
mov esi, 0x355fb16d
mov bh, bl
xor bh, dl
test dl, dl
mov edx, 0x355fb16d
cmovne edx, edi
test bl, bl
cmove edx, esi
test bh, bh
cmovne edx, edi
jmp 0x4063d0
mov edx, 0x5ba4e98a
jmp 0x4063d0
mov dword [esp + 8], ecx
mov edx, eax
jmp 0x4063d0
mov edx, dword [esp + 8]
mov edx, dword [edx]
mov dword [esp], edx
mov edx, 0x39f774b0
jmp 0x4063d0
cmp ecx, 0x8e7da7a2
je 0x40730d
cmp ecx, 0x8f8d2caa
jne 0x4057e0
mov eax, dword [0x4ae400]
mov esi, 0x37c985c0
mov edi, 0x1ede1b72
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x1ede1b72
jmp 0x407729
cmp ecx, 0x3fa970c3
je 0x407351
cmp ecx, 0x400025de
jne 0x4057e0
mov ecx, 0x76569dfc
jmp 0x4057e0
cmp ecx, 0xc2a318fc
je 0x40735b
cmp ecx, 0xc2fa2c24
jne 0x4057e0
mov ecx, 0xc020eee5
jmp 0x4057e0
cmp ecx, 0x1b2ed2dc
je 0x407381
cmp ecx, 0x1ede1b72
jne 0x4057e0
mov ecx, 0x37c985c0
jmp 0x4057e0
cmp ecx, 0xab48830b
je 0x40738b
cmp ecx, 0xac2f657f
jne 0x4057e0
cmp byte [esp + 0x26], 0
mov ecx, 0x7763e2ec
mov eax, 0x8f8d2caa
cmovne ecx, eax
jmp 0x4057e0
cmp ecx, 0x611e0bb6
je 0x407395
cmp ecx, 0x6429809e
jne 0x4057e0
mov ecx, 0x28f18f24
jmp 0x4057e0
cmp ecx, 0xde5157cf
je 0x4073b6
cmp ecx, 0xdefbd979
jne 0x4057e0
mov eax, dword [esp + 0x10]
mov edi, 0x47191736
mov esi, 0x3f4484c0
mov dword [esp + 0xd8], eax
mov eax, dword [0x4ae400]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x3f4484c0
jmp 0x4057be
cmp ecx, 0xf77ec8a4
je 0x4073cb
cmp ecx, 0xfb72b69f
jne 0x4057e0
mov edx, dword [0x4ae400]
mov eax, dword [0x4ae3fc]
mov esi, 0x170bc1ed
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, 0xdcc3ebc5
jmp 0x40733b
cmp ecx, 0x9c834236
je 0x407427
cmp ecx, 0x9f05fde2
jne 0x4057e0
mov eax, dword [0x4ae400]
mov esi, 0xdf825697
mov edi, 0xe36e910
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0xe36e910
jmp 0x407729
cmp ecx, 0x4b8b51c3
je 0x40743b
cmp ecx, 0x4c74ce0d
jne 0x4057e0
mov eax, dword [0x4ae400]
mov edi, 0xc020eee5
mov esi, 0xc2fa2c24
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0xc2fa2c24
jmp 0x4057be
cmp ecx, 0xcffd70c0
je 0x4074e2
cmp ecx, 0xd1c2ed4a
jne 0x4057e0
mov eax, dword [esp + 0xbc]
mov ecx, dword [esp + 0x74]
lea eax, [ecx + eax + 0x14]
mov ecx, 0x64980eaf
nop dword [eax + eax]
cmp ecx, 0x64980eaf
je 0x4066c5
cmp ecx, 0xa22456c8
jne 0x4066b0
jmp 0x407502
mov ecx, 0xa22456c8
jmp 0x4066b0
cmp ecx, 0x312cd159
je 0x407525
cmp ecx, 0x35755be4
jne 0x4057e0
mov ecx, 0x48562b1b
jmp 0x4057e0
cmp ecx, 0xb596c150
je 0x40753f
cmp ecx, 0xb65b3675
jne 0x4057e0
mov ecx, 0xdff91140
jmp 0x4057e0
cmp ecx, 0x7a623890
je 0x407566
cmp ecx, 0x7ac6dd94
jne 0x4057e0
mov edx, dword [ebp + 8]
mov edi, 0x2c95f60f
mov eax, dword [edx]
mov ecx, dword [eax + 4]
mov eax, dword [edx + ecx + 0x20]
mov ecx, dword [edx + ecx + 0x24]
mov edx, dword [0x4ae3f8]
lea esi, [edx + 1]
imul esi, edx
mov edx, esi
xor edx, 0xfffffffe
test edx, esi
mov esi, 0xc549be53
sete dl
cmp dword [0x4ae3f4], 0xa
setl dh
or dh, dl
mov edx, 0x2c95f60f
cmovne edx, esi
mov esi, 0x5d9dae0c
cmovne edi, esi
mov esi, 0xf39c4154
nop dword [eax]
cmp esi, 0x2c95f60e
jle 0x4067b0
cmp esi, 0x2c95f60f
je 0x4067c4
cmp esi, 0x67dfe5df
je 0x40757e
cmp esi, 0x5d9dae0c
jne 0x406780
mov esi, edx
jmp 0x406780
cmp esi, 0xc549be53
je 0x4067cb
cmp esi, 0xf39c4154
jne 0x406780
mov esi, edi
jmp 0x406780
mov esi, 0x5d9dae0c
jmp 0x406780
mov esi, 0x67dfe5df
jmp 0x406780
cmp ecx, 0xe7dd04a1
je 0x40759e
cmp ecx, 0xe8b1151a
jne 0x4057e0
cmp byte [esp + 0x27], 0
mov ecx, 0x3fa970c3
mov eax, 0xa1b91ce2
cmovne ecx, eax
jmp 0x4057e0
cmp ecx, 0x2f6a606
jne 0x407a3b
mov edx, dword [0x4ae3e8]
mov ecx, dword [0x4ae3e4]
mov edi, dword [ebp + 8]
mov esi, 0x355fb16d
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, 0x73dd332a
cmovne esi, ebx
test edx, eax
mov eax, dword [edi]
mov edx, dword [eax + 4]
mov eax, esi
sete byte [esp + 0xc]
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, esi
setl byte [esp + 0x14]
lea ecx, [edi + edx + 0x38]
mov edx, 0xc70a6d5d
nop word cs:[eax + eax]
cmp edx, 0x5ba4e989
jg 0x4068a0
cmp edx, 0xc70a6d5d
je 0x4068bf
cmp edx, 0x355fb16d
je 0x4068ed
cmp edx, 0x39f774b0
jne 0x406870
jmp 0x40769d
cmp edx, 0x5ba4e98a
je 0x4068f7
cmp edx, 0x5dfb388e
je 0x406902
cmp edx, 0x73dd332a
jne 0x406870
mov edx, 0x5dfb388e
jmp 0x406870
movzx ebx, byte [esp + 0xc]
movzx edx, byte [esp + 0x14]
mov edi, 0x5ba4e98a
mov esi, 0x355fb16d
mov bh, bl
xor bh, dl
test dl, dl
mov edx, 0x355fb16d
cmovne edx, edi
test bl, bl
cmove edx, esi
test bh, bh
cmovne edx, edi
jmp 0x406870
mov edx, 0x5ba4e98a
jmp 0x406870
mov dword [esp + 8], ecx
mov edx, eax
jmp 0x406870
mov edx, dword [esp + 8]
mov edx, dword [edx]
mov dword [esp], edx
mov edx, 0x39f774b0
jmp 0x406870
mov eax, dword [esp + 0xc8]
mov esi, 0xcc0009f
mov edi, 0xe52801be
mov eax, dword [eax]
add eax, dword [esp + 0x78]
mov ecx, dword [0x4ae3e0]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
setne cl
cmp dword [0x4ae3dc], 0xa
setge dl
mov ch, dl
or dl, cl
xor ch, cl
xor dl, 1
or dl, ch
mov ecx, 0x56290200
mov edx, 0x2c05e50b
cmovne ecx, edx
mov edx, 0x56290200
cmovne edx, esi
nop dword [eax]
cmp edi, 0xcc0009e
jle 0x4069a0
cmp edi, 0xcc0009f
je 0x4069b4
cmp edi, 0x2c05e50b
je 0x4076c8
cmp edi, 0x56290200
jne 0x406970
mov esi, dword [esp]
mov edi, 0xcc0009f
jmp 0x406970
cmp edi, 0xe52801be
je 0x4069bf
cmp edi, 0x3f931da
jne 0x406970
mov edi, edx
jmp 0x406970
mov esi, dword [esp]
mov edi, ecx
movzx ebx, byte [esi + 0x40]
jmp 0x406970
mov dword [esp], eax
mov edi, 0x3f931da
jmp 0x406970
mov edx, dword [0x4ae400]
mov eax, dword [0x4ae3fc]
mov esi, 0xaf4bf2a6
mov ebx, dword [esp + 0x30]
mov edi, 0x70e8384c
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, 0xe36e910
cmovne edx, esi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, esi
mov esi, dword [esp + 0x34]
cmp eax, 0xa
cmovge ecx, edx
mov edx, 0x49a260b2
add ebx, edx
not edx
adc esi, edi
mov edi, 0x70e8384c
add edx, ebx
not edi
mov dword [esp + 0x60], edx
adc esi, edi
mov dword [esp + 0x64], esi
jmp 0x4057e0
mov ecx, 0xbf5f26f0
jmp 0x4057e0
mov edx, dword [0x4ae400]
mov eax, dword [0x4ae3fc]
mov esi, 0x9745e9fc
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, 0x312cd159
cmovne edx, esi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, esi
cmp eax, 0xa
mov eax, dword [esp + 0x50]
mov esi, dword [esp + 0x54]
cmovge ecx, edx
mov edx, dword [esp + 0x58]
cmp edx, eax
mov edx, dword [esp + 0x5c]
sbb edx, esi
setge byte [esp + 0x23]
jmp 0x4057e0
cmp byte [esp + 0x25], 0
mov ecx, 0xd63b34b7
mov eax, 0x1f5fa530
cmovne ecx, eax
jmp 0x4057e0
mov edx, dword [0x4ae400]
mov eax, dword [0x4ae3fc]
mov esi, 0xc2fa2c24
mov edi, 0x585e3af
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
cmovne esi, edi
test edx, ecx
mov ecx, esi
cmove ecx, edi
cmp eax, 0xa
cmovge ecx, esi
jmp 0x4057e0
mov edx, dword [0x4ae400]
mov eax, dword [0x4ae3fc]
mov esi, 0x1962c7f0
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, 0xdcc3ebc5
cmovne edx, esi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, esi
cmp eax, 0xa
mov esi, dword [esp + 0x1c]
cmovge ecx, edx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x90], esi
mov dword [esp + 0x94], edx
jmp 0x4057e0
mov eax, dword [esp + 0xa0]
mov edx, 0xd63b34b7
xor eax, dword [esp + 0x48]
mov ecx, dword [esp + 0xa4]
xor ecx, dword [esp + 0x44]
or ecx, eax
mov ecx, 0xb596c150
cmove ecx, edx
jmp 0x4057e0
mov eax, dword [esp + 0xd0]
mov ecx, 0xa9d456b2
mov dword [esp + 0x10], eax
jmp 0x4057e0
mov ecx, 0x170bc1ed
jmp 0x4057e0
mov ecx, 0xfb72b69f
jmp 0x4057e0
cmp byte [esp + 0x23], 0
mov ecx, 0xf6e7b959
mov eax, 0xe1adf243
cmovne ecx, eax
jmp 0x4057e0
mov ecx, 0x4a73ce5d
jmp 0x4057e0
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x58], eax
mov ecx, 0x72727361
jmp 0x4057e0
mov edx, dword [0x4ae400]
mov eax, dword [0x4ae3fc]
mov esi, 0xbca85391
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, 0x6429809e
jmp 0x40733b
xor eax, eax
cmp eax, dword [esp + 0xa8]
mov eax, 0
mov ecx, 0xe8b1151a
sbb eax, dword [esp + 0xac]
setl byte [esp + 0x27]
jmp 0x4057e0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xac], ecx
mov dword [esp + 0xa8], eax
mov ecx, 0xb328a384
jmp 0x4057e0
mov edx, dword [0x4ae400]
mov eax, dword [0x4ae3fc]
mov esi, 0xbe710e8c
mov edi, 0x4b8b51c3
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
cmovne esi, edi
test edx, ecx
mov ecx, esi
cmove ecx, edi
cmp eax, 0xa
cmovge ecx, esi
jmp 0x4057e0
xor eax, eax
cmp eax, dword [esp + 0x90]
mov eax, 0
mov ecx, 0xaf5d5e67
sbb eax, dword [esp + 0x94]
setl byte [esp + 0x24]
jmp 0x4057e0
mov edx, dword [ebp + 8]
mov edi, 0x2c95f60f
mov eax, dword [edx]
mov ecx, dword [eax + 4]
mov eax, dword [edx + ecx + 0x20]
mov ecx, dword [edx + ecx + 0x24]
mov edx, dword [0x4ae3f8]
lea esi, [edx + 1]
imul esi, edx
mov edx, esi
xor edx, 0xfffffffe
test edx, esi
mov esi, 0xc549be53
setne dl
cmp dword [0x4ae3f4], 0xa
setge dh
mov bl, dh
or dh, dl
xor bl, dl
xor dh, 1
or dh, bl
mov edx, 0x2c95f60f
cmovne edx, esi
mov esi, 0x5d9dae0c
cmovne edi, esi
mov esi, 0xf39c4154
nop word [eax + eax]
cmp esi, 0x2c95f60e
jle 0x406d50
cmp esi, 0x2c95f60f
je 0x406d64
cmp esi, 0x67dfe5df
je 0x4076ef
cmp esi, 0x5d9dae0c
jne 0x406d20
mov esi, edx
jmp 0x406d20
cmp esi, 0xc549be53
je 0x406d6b
cmp esi, 0xf39c4154
jne 0x406d20
mov esi, edi
jmp 0x406d20
mov esi, 0x5d9dae0c
jmp 0x406d20
mov esi, 0x67dfe5df
jmp 0x406d20
mov eax, dword [esp + 0x60]
mov ecx, 0x95b18165
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x18], eax
jmp 0x4057e0
mov dword [esp + 4], ecx
mov dword [esp], eax
mov ecx, 0x810c318c
mov eax, dword [esp]
mov eax, dword [esp + 4]
jmp 0x4057e0
mov eax, dword [0x4ae400]
mov edi, 0x400025de
mov esi, 0x1ede1b72
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x1ede1b72
jmp 0x4057be
mov dword [esp + 0x6c], 0
mov ecx, 0xcc65eb5c
mov dword [esp + 0x68], 0
jmp 0x4057e0
mov ecx, 0xfb72b69f
jmp 0x4057e0
mov ecx, dword [esp + 0x70]
mov edx, dword [0x4ae3f8]
mov edi, 0x2c95f60f
lea esi, [edx + 1]
mov eax, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x24]
imul esi, edx
not esi
or esi, 0xfffffffe
cmp esi, 0xffffffff
mov esi, 0xc549be53
sete dl
cmp dword [0x4ae3f4], 0xa
setl dh
or dh, dl
mov edx, 0x2c95f60f
cmovne edx, esi
mov esi, 0x5d9dae0c
cmovne edi, esi
mov esi, 0xf39c4154
nop word [eax + eax]
cmp esi, 0x2c95f60e
jle 0x406e70
cmp esi, 0x2c95f60f
je 0x406e84
cmp esi, 0x67dfe5df
je 0x407746
cmp esi, 0x5d9dae0c
jne 0x406e40
mov esi, edx
jmp 0x406e40
cmp esi, 0xc549be53
je 0x406e8b
cmp esi, 0xf39c4154
jne 0x406e40
mov esi, edi
jmp 0x406e40
mov esi, 0x5d9dae0c
jmp 0x406e40
mov esi, 0x67dfe5df
jmp 0x406e40
mov eax, dword [esp + 0x30]
mov eax, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
mov eax, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
mov eax, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
mov eax, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
mov eax, dword [esp + 0x34]
mov ecx, 0xdf825697
jmp 0x4057e0
mov eax, dword [0x4ae400]
mov esi, 0x2fb00a92
mov edi, 0xca5f8d75
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0xca5f8d75
jmp 0x407729
mov eax, dword [0x4ae400]
mov esi, 0xf77ec8a4
mov edi, 0x3c52ab4c
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x3c52ab4c
jmp 0x407729
mov eax, dword [esp + 0x7c]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x4c]
mov eax, dword [0x4ae3e8]
mov edi, dword [0x4ae3e4]
lea esi, [eax + 1]
lea ecx, [edx + ecx + 0x38]
imul esi, eax
mov eax, 0x355fb16d
not esi
or esi, 0xfffffffe
cmp esi, 0xffffffff
mov esi, 0x73dd332a
sete bl
sete byte [esp + 0xc]
cmove eax, esi
cmp edi, 0xa
mov edi, 0x355fb16d
setl dl
setl byte [esp + 0x14]
cmovge eax, edi
xor dl, bl
mov edx, 0xc70a6d5d
cmovne eax, esi
nop dword [eax + eax]
cmp edx, 0x5ba4e989
jg 0x406fa0
cmp edx, 0xc70a6d5d
je 0x406fbf
cmp edx, 0x355fb16d
je 0x406fed
cmp edx, 0x39f774b0
jne 0x406f70
jmp 0x40775e
cmp edx, 0x5ba4e98a
je 0x406ff7
cmp edx, 0x5dfb388e
je 0x407002
cmp edx, 0x73dd332a
jne 0x406f70
mov edx, 0x5dfb388e
jmp 0x406f70
movzx ebx, byte [esp + 0xc]
movzx edx, byte [esp + 0x14]
mov edi, 0x5ba4e98a
mov esi, 0x355fb16d
mov bh, bl
xor bh, dl
test dl, dl
mov edx, 0x355fb16d
cmovne edx, edi
test bl, bl
cmove edx, esi
test bh, bh
cmovne edx, edi
jmp 0x406f70
mov edx, 0x5ba4e98a
jmp 0x406f70
mov dword [esp + 8], ecx
mov edx, eax
jmp 0x406f70
mov edx, dword [esp + 8]
mov edx, dword [edx]
mov dword [esp], edx
mov edx, 0x39f774b0
jmp 0x406f70
mov ecx, dword [esp + 0xf0]
add ecx, dword [esp + 0x84]
push 0
push 0
call fcn.004114f0
mov ecx, 0xf349d2c
jmp 0x4057e0
mov ecx, 0xec0091da
jmp 0x4057e0
push dword [ebp + 0xc]
call fcn.0040bc20
add esp, 4
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], 0
mov ecx, 0xc2a318fc
jmp 0x4057e0
mov eax, dword [esp + 0x88]
mov ecx, 0xcc65eb5c
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x68], eax
jmp 0x4057e0
mov eax, dword [0x4ae400]
mov esi, 0x10c4a6eb
mov edi, 0xc29ac8bd
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0xc29ac8bd
jmp 0x407729
mov edx, dword [0x4ae400]
mov eax, dword [0x4ae3fc]
mov esi, 0x6a082b5
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, 0x879cdc0e
cmovne edx, esi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, esi
mov esi, dword [esp + 0x10]
cmp eax, 0xa
cmovge ecx, edx
mov dword [esp + 0xdc], esi
jmp 0x4057e0
mov eax, dword [esp + 0xb4]
mov ecx, 0xecba1f9a
or eax, 4
mov dword [esp + 0xb8], eax
jmp 0x4057e0
mov ecx, 0xcf22e4af
jmp 0x4057e0
mov eax, dword [esp + 0xcc]
mov ecx, dword [0x4ae3d8]
mov esi, 0xa0ffae55
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x4ae3d4], 0xa
setl dl
or dl, cl
mov ecx, 0xe4130933
mov edx, 0xcb02b8ed
cmovne ecx, edx
mov edx, 0xe4130933
cmovne edx, esi
mov esi, 0x71d9b23b
nop word cs:[eax + eax]
cmp esi, 0xe4130932
jle 0x4071a0
cmp esi, 0xe4130933
je 0x4071b7
cmp esi, 0x71d9b23b
je 0x4071be
cmp esi, 0x726c90b1
jne 0x407170
jmp 0x4077ad
cmp esi, 0xa0ffae55
je 0x4071c2
cmp esi, 0xcb02b8ed
jne 0x407170
mov esi, 0x726c90b1
jmp 0x407170
mov esi, 0xa0ffae55
jmp 0x407170
mov esi, edx
jmp 0x407170
mov esi, ecx
jmp 0x407170
mov ecx, 0x98a11957
jmp 0x4057e0
mov edx, dword [ebp + 8]
mov eax, dword [edx]
mov ecx, dword [eax + 4]
add ecx, edx
push 0
push dword [esp + 0x14]
call fcn.00411680
mov ecx, 0x2fb00a92
jmp 0x4057e0
test al, al
mov ecx, 0xde5157cf
mov eax, 0x611e0bb6
setne byte [esp]
cmp byte [esp], 0
mov esi, dword [esp + 0x6c]
mov edx, dword [esp + 0x68]
cmovne ecx, eax
mov dword [esp + 0x1c], esi
mov dword [esp + 0x18], edx
jmp 0x4057e0
mov eax, dword [0x4ae400]
mov esi, 0x4a73ce5d
mov edi, 0x495dca7f
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x495dca7f
jmp 0x407729
cmp dword [esp + 0xd4], 0
mov ecx, 0x3dfb675d
sete byte [esp + 0x25]
jmp 0x4057e0
mov ecx, 0x8e7da7a2
jmp 0x4057e0
cmp byte [esp + 0x24], 0
mov ecx, 0xab48830b
mov eax, 0x2f6a606
cmovne ecx, eax
jmp 0x4057e0
mov eax, dword [esp + 0xe8]
mov ecx, 0xa6825d91
mov dword [esp + 0x10], eax
jmp 0x4057e0
mov eax, dword [0x4ae400]
mov esi, 0x48562b1b
mov edi, 0x35755be4
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x35755be4
jmp 0x407729
mov ecx, 0x9c834236
jmp 0x4057e0
mov eax, dword [esp]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x48]
mov dword [esp], eax
mov eax, 0xe4a1f7f2
nop word [eax + eax]
cmp eax, 0x34093663
je 0x4077c2
cmp eax, 0xe4a1f7f2
jne 0x4072e0
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
add eax, 0x24
mov dword [esp + 8], eax
mov eax, 0x34093663
jmp 0x4072e0
mov edx, dword [0x4ae400]
mov eax, dword [0x4ae3fc]
mov esi, 0x95b18165
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, 0x8383e8ed
cmovne edx, esi
cmp ecx, 0xffffffff
mov ecx, edx
cmove ecx, esi
cmp eax, 0xa
cmovge ecx, edx
jmp 0x4057e0
mov ecx, 0x7763e2ec
jmp 0x4057e0
mov eax, dword [0x4ae400]
mov edi, 0x810c318c
mov esi, 0x8425c776
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x8425c776
jmp 0x4057be
mov ecx, 0x76569dfc
jmp 0x4057e0
mov ecx, 0x6d472c2
jmp 0x4057e0
mov eax, dword [ebp + 8]
mov ecx, 0xd1c2ed4a
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x74]
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0xbc], eax
jmp 0x4057e0
mov eax, dword [esp + 0x10]
mov ecx, 0x93bfc95e
mov dword [esp + 0xb4], eax
jmp 0x4057e0
mov edx, dword [0x4ae400]
mov eax, dword [0x4ae3fc]
mov esi, 0x3c52ab4c
mov edi, 0x607d1048
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
cmovne esi, edi
test edx, ecx
mov ecx, esi
cmove ecx, edi
cmp eax, 0xa
mov eax, dword [ebp + 8]
cmovge ecx, esi
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x80]
mov eax, dword [eax]
mov dword [esp + 0xe0], eax
jmp 0x4057e0
mov eax, dword [ebp + 8]
mov ecx, 0xfe83ab7e
mov dword [esp + 0xf4], eax
jmp 0x4057e0
mov ecx, dword [esp + 0x70]
mov edi, 0x2c95f60f
mov eax, dword [ecx + 0x20]
mov edx, dword [ecx + 0x24]
mov ecx, dword [0x4ae3f8]
lea esi, [ecx + 1]
imul esi, ecx
not esi
or esi, 0xfffffffe
cmp esi, 0xffffffff
mov esi, 0xc549be53
sete cl
cmp dword [0x4ae3f4], 0xa
setl ch
or ch, cl
mov ecx, 0x2c95f60f
cmovne ecx, esi
mov esi, 0x5d9dae0c
cmovne edi, esi
mov esi, 0xf39c4154
nop word [eax + eax]
cmp esi, 0x2c95f60e
jle 0x4074c0
cmp esi, 0x2c95f60f
je 0x4074d4
cmp esi, 0x67dfe5df
je 0x407839
cmp esi, 0x5d9dae0c
jne 0x407490
mov esi, ecx
jmp 0x407490
cmp esi, 0xc549be53
je 0x4074db
cmp esi, 0xf39c4154
jne 0x407490
mov esi, edi
jmp 0x407490
mov esi, 0x5d9dae0c
jmp 0x407490
mov esi, 0x67dfe5df
jmp 0x407490
mov eax, dword [esp + 0x98]
mov ecx, 0xf68276e7
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x18], eax
jmp 0x4057e0
mov dword [esp], eax
mov eax, dword [esp]
mov eax, dword [eax]
mov ecx, eax
xor ecx, 0xfffffe3f
and ecx, eax
mov dword [esp + 0xc0], ecx
mov ecx, 0xb4f513db
jmp 0x4057e0
mov eax, dword [esp + 0x50]
mov eax, dword [esp + 0x54]
mov eax, dword [esp + 0x58]
mov eax, dword [esp + 0x5c]
mov ecx, 0x8508746d
jmp 0x4057e0
mov eax, dword [0x4ae400]
mov esi, 0xdefbd979
mov edi, 0x3f4484c0
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov ecx, 0x3f4484c0
jmp 0x407729
mov eax, dword [esp + 0x10]
mov ecx, 0x6d79697e
or eax, 4
mov dword [esp + 0xe8], eax
jmp 0x4057e0
mov dword [esp + 4], ecx
mov dword [esp], eax
mov eax, dword [esp + 4]
mov ecx, dword [esp]
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], eax
mov ecx, 0xcc66e8de
jmp 0x4057e0
mov ecx, dword [0x4ae3e8]
mov edx, dword [0x4ae3e4]
mov esi, 0x355fb16d
mov edi, 0x73dd332a
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
cmovne esi, edi
test ecx, eax
mov eax, dword [esp + 0xe4]
mov ecx, esi
sete byte [esp + 0xc]
cmove ecx, edi
cmp edx, 0xa
mov edx, 0xc70a6d5d
setl byte [esp + 0x14]
cmovge ecx, esi
add eax, 0x38
nop word cs:[eax + eax]
cmp edx, 0x5ba4e989
jg 0x407630
cmp edx, 0xc70a6d5d
je 0x40764f
cmp edx, 0x355fb16d
je 0x407678
cmp edx, 0x39f774b0
jne 0x407600
jmp 0x4078a4
cmp edx, 0x5ba4e98a
je 0x40767f
cmp edx, 0x5dfb388e
je 0x40768a
cmp edx, 0x73dd332a
jne 0x407600
mov edx, 0x5dfb388e
jmp 0x407600
movzx ebx, byte [esp + 0xc]
movzx edx, byte [esp + 0x14]
mov esi, 0x355fb16d
mov edi, 0x5ba4e98a
mov dh, bl
xor dh, dl
cmovne esi, edi
test dl, dl
mov edx, esi
cmovne edx, edi
test bl, bl
cmove edx, esi
jmp 0x407600
mov edx, 0x5ba4e98a
jmp 0x407600
mov dword [esp + 8], eax
mov edx, ecx
jmp 0x407600
mov edx, dword [esp + 8]
mov edx, dword [edx]
mov dword [esp], edx
mov edx, 0x39f774b0
jmp 0x407600
mov eax, dword [esp]
mov ecx, 0x67a0400b
mov dword [esp + 0xc4], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x78]
mov eax, dword [eax]
add eax, 4
mov dword [esp + 0xc8], eax
jmp 0x4057e0
mov byte [esp + 8], bl
movsx eax, byte [esp + 8]
mov ecx, dword [esp + 0xc4]
push eax
call fcn.004110f0
mov dword [esp + 0xcc], eax
mov ecx, 0x47f86398
jmp 0x4057e0
mov dword [esp + 4], ecx
mov dword [esp], eax
mov esi, 0xe73eeaf1
mov edi, 0x8425c776
mov eax, dword [esp + 4]
mov ecx, dword [esp]
cmp ecx, 1
sbb eax, 0
mov eax, dword [0x4ae400]
setl byte [esp + 0x22]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, 0x8425c776
sete al
cmove ecx, esi
cmp dword [0x4ae3fc], 0xa
setl dl
cmovge ecx, edi
xor dl, al
cmovne ecx, esi
jmp 0x4057e0
mov dword [esp + 4], ecx
mov dword [esp], eax
mov ecx, 0x4b8b51c3
mov eax, dword [esp]
mov eax, dword [esp + 4]
jmp 0x4057e0
mov eax, dword [esp]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x48]
mov dword [esp], eax
mov eax, 0xe4a1f7f2
nop dword [eax]
cmp eax, 0x34093663
je 0x407959
cmp eax, 0xe4a1f7f2
jne 0x407780
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
add eax, 0x24
mov dword [esp + 8], eax
mov eax, 0x34093663
jmp 0x407780
cmp eax, 0xffffffff
mov ecx, 0xb65b3675
mov edx, 0xb198d63f
cmove ecx, edx
jmp 0x4057e0
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ecx, dword [esp + 0xc]
push dword [esp + 4]
push dword [esp + 4]
push dword [esp + 0x1c]
call eax
mov edi, dword [0x4ae400]
mov esi, dword [0x4ae3fc]
mov dword [esp + 0xb0], eax
mov dword [esp + 0xa4], edx
mov eax, 0x54b9ed31
mov edx, dword [esp + 0xb0]
lea ecx, [edi + 1]
imul ecx, edi
mov dword [esp + 0xa0], edx
mov edi, ecx
xor edi, 0xfffffffe
test edi, ecx
sete bl
cmp esi, 0xa
setl bh
xor bh, bl
mov ebx, 0xa43117c9
cmovne ebx, eax
test edi, ecx
mov ecx, ebx
cmove ecx, eax
cmp esi, 0xa
cmovge ecx, ebx
jmp 0x4057e0
mov edi, dword [0x4ae400]
mov dword [esp + 4], edx
mov dword [esp], eax
mov esi, dword [0x4ae3fc]
mov eax, dword [esp + 4]
mov edx, dword [esp]
lea ecx, [edi + 1]
imul ecx, edi
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x48]
mov edi, 0xbe710e8c
mov dword [esp + 0x38], edx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x44]
sete bl
cmp esi, 0xa
setl bh
xor bh, bl
mov ebx, 0xd353d726
cmovne edi, ebx
cmp ecx, 0xffffffff
mov ecx, edi
cmove ecx, ebx
cmp esi, 0xa
mov dword [esp + 0x2c], eax
cmovge ecx, edi
jmp 0x4057e0
mov edx, dword [ebp + 8]
mov ecx, dword [esp]
mov edi, 0x56290200
mov eax, dword [edx]
mov eax, dword [eax + 4]
add eax, edx
mov edx, dword [0x4ae3e0]
lea esi, [edx + 1]
imul esi, edx
mov edx, esi
xor edx, 0xfffffffe
test edx, esi
mov esi, 0x56290200
sete dl
cmp dword [0x4ae3dc], 0xa
setl dh
or dh, dl
mov edx, 0x2c05e50b
cmovne esi, edx
mov edx, 0xcc0009f
cmovne edi, edx
mov edx, 0xe52801be
nop word cs:[eax + eax]
cmp edx, 0xcc0009e
jle 0x407930
cmp edx, 0xcc0009f
je 0x407944
cmp edx, 0x2c05e50b
je 0x40797b
cmp edx, 0x56290200
jne 0x407900
mov edx, dword [esp]
mov edx, 0xcc0009f
jmp 0x407900
cmp edx, 0xe52801be
je 0x40794f
cmp edx, 0x3f931da
jne 0x407900
mov edx, edi
jmp 0x407900
mov edx, dword [esp]
movzx ebx, byte [edx + 0x40]
mov edx, esi
jmp 0x407900
mov dword [esp], eax
mov edx, 0x3f931da
jmp 0x407900
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ecx, dword [esp + 0xc]
push dword [esp + 4]
push dword [esp + 4]
push dword [esp + 0x1c]
call eax
mov ecx, 0xde3f5e1
jmp 0x4057e0
mov byte [esp + 8], bl
movsx eax, byte [esp + 8]
push eax
call fcn.004110f0
mov ecx, dword [0x4ae3d8]
mov esi, 0xa0ffae55
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x4ae3d4], 0xa
setl dl
or dl, cl
mov ecx, 0xe4130933
mov edx, 0xcb02b8ed
cmovne ecx, edx
mov edx, 0xe4130933
cmovne edx, esi
mov esi, 0x71d9b23b
nop dword [eax + eax]
cmp esi, 0xe4130932
jle 0x407a00
cmp esi, 0xe4130933
je 0x407a17
cmp esi, 0x71d9b23b
je 0x407a1e
cmp esi, 0x726c90b1
jne 0x4079d0
jmp 0x407a26
cmp esi, 0xa0ffae55
je 0x407a22
cmp esi, 0xcb02b8ed
jne 0x4079d0
mov esi, 0x726c90b1
jmp 0x4079d0
mov esi, 0xa0ffae55
jmp 0x4079d0
mov esi, edx
jmp 0x4079d0
mov esi, ecx
jmp 0x4079d0
cmp eax, 0xffffffff
mov ecx, 0x67f5e540
mov edx, 0x7a623890
cmove ecx, edx
jmp 0x4057e0
cmp ecx, 0xfe83ab7e
jne 0x4057e0
lea ecx, [esp + 0xf8]
call fcn.00411920
mov esi, dword [esp + 0xf4]
mov ecx, dword [esp + 0x100]
xor ecx, ebp
call fcn.0043a530
mov eax, esi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret