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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xe0
mov eax, dword [0x44e82c]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
mov esi, 0x7d1c228d
xor eax, ebp
test ecx, ecx
mov dword [esp + 0xd8], eax
mov eax, 0xaab0f4fe
cmove esi, eax
lea eax, [edx + ecx]
mov dword [esp + 0x24], eax
mov eax, 0x3c4fef22
mov dword [esp + 0x28], esi
mov dword [esp + 0xc], ecx
nop word cs:[eax + eax]
cmp eax, 0x8cf5131
jg 0x417f80
cmp eax, 0xc15df467
jg 0x417f20
cmp eax, 0x99d10e32
jg 0x418076
cmp eax, 0x8b298537
jg 0x4182d8
cmp eax, 0x86c2d48d
je 0x418680
cmp eax, 0x8725168e
je 0x41870b
cmp eax, 0x8a154a66
jne 0x417ec0
mov eax, dword [esp + 0x7c]
mov ecx, 0x2a177f06
cmp eax, 0x100
mov eax, 0xd3900ef5
jmp 0x4197be
cmp eax, 0xd3900ef4
jle 0x4181e9
cmp eax, 0xf4663037
jg 0x418336
cmp eax, 0xd3900ef5
je 0x418730
cmp eax, 0xe6078556
je 0x4187dc
cmp eax, 0xf24423f1
jne 0x417ec0
mov eax, dword [esp + 0x48]
mov eax, dword [esp + 0x40]
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0xa8]
call fcn.00405960
mov eax, 0x3aa6bb8d
cmp eax, 0x8cf5131
jle 0x417ecb
nop
cmp eax, 0x3c4fef21
jg 0x417fe0
cmp eax, 0x23a65acf
jle 0x41823a
cmp eax, 0x3aa6bb8c
jg 0x418487
cmp eax, 0x23a65ad0
je 0x418813
cmp eax, 0x2a177f06
je 0x419598
cmp eax, 0x2f6691f6
jne 0x417ec0
mov ecx, dword [esp + 0x70]
mov eax, 0xcead3379
mov dword [esp + 0x14], ecx
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
cmp eax, 0x6241d5d3
jle 0x418288
cmp eax, 0x6ff32392
jg 0x4184cf
cmp eax, 0x6241d5d4
je 0x418836
cmp eax, 0x65862d67
je 0x41964c
cmp eax, 0x69ebf345
jne 0x417ec0
mov eax, dword [esp + 0x80]
mov eax, dword [esp + 0x88]
mov eax, dword [esp + 0x80]
mov eax, dword [esp + 0x80]
mov eax, dword [esp + 0x88]
mov eax, dword [esp + 0x80]
mov eax, dword [esp + 0x88]
mov eax, dword [esp + 0x80]
mov eax, dword [esp + 0x80]
mov eax, dword [esp + 0x88]
mov eax, dword [esp + 0x64]
mov eax, 0x1463e7f4
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
cmp eax, 0xad33f9c9
jg 0x418564
cmp eax, 0x99d10e33
je 0x4188c7
cmp eax, 0xa2b8ba37
je 0x418981
cmp eax, 0xaab0f4fe
jne 0x417ec0
movzx eax, byte [esp + 0xc]
mov edi, 0xe9aa47c6
and eax, 1
mov dword [esp + 0x34], eax
mov eax, dword [0x44f568]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 1
not eax
mov edx, eax
and edx, 0xfffffffe
or ecx, edx
mov edx, dword [0x44f56c]
not ecx
or ecx, eax
cmp ecx, 0xffffffff
sete al
setne cl
sete byte [esp + 0x90]
cmp edx, 9
setg ch
cmp edx, 0xa
setl dl
setl byte [esp + 0x98]
and al, ch
or ch, cl
and dl, cl
or dl, al
mov al, ch
xor al, dl
mov eax, 0x92e2a918
cmovne edi, eax
test dl, dl
mov edx, 0xe9aa47c6
mov eax, edi
cmovne eax, edx
test ch, ch
mov ecx, dword [ebp + 0x18]
mov edx, 0x45db3d0d
cmovne eax, edi
mov ecx, dword [ecx + 0x14]
nop dword [eax + eax]
cmp edx, 0xe9aa47c5
jg 0x418160
cmp edx, 0x92e2a918
je 0x4181d3
cmp edx, 0xb441f633
jne 0x418130
mov dword [esp + 0xa0], ecx
mov edx, eax
cmp edx, 0xe9aa47c5
jle 0x418138
nop dword [eax]
cmp edx, 0xe9aa47c6
je 0x41899b
cmp edx, 0x45db3d0d
jne 0x418130
movzx ebx, byte [esp + 0x90]
movzx edx, byte [esp + 0x98]
mov edi, 0xb441f633
mov esi, 0x92e2a918
mov dh, bl
xor dl, 1
xor dh, 1
and bl, dh
mov bh, dh
and bh, bl
xor bl, dh
or bl, bh
mov bh, dh
xor bl, dl
and bh, dl
xor dl, dh
or dl, bh
mov dh, dl
xor dh, bl
test dh, 1
cmovne edi, esi
test dl, 1
mov edx, 0xb441f633
cmovne edx, edi
test bl, 1
cmove edx, edi
cmp edx, 0xe9aa47c5
jle 0x418138
jmp 0x418160
mov edx, 0xb441f633
cmp edx, 0xe9aa47c5
jle 0x418138
jmp 0x418160
cmp eax, 0xc245d396
jle 0x4185de
cmp eax, 0xc245d397
je 0x4198a0
cmp eax, 0xc25c3dfc
je 0x4189d0
cmp eax, 0xcead3379
jne 0x417ec0
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x14]
mov eax, 0x99d10e33
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], edx
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
cmp eax, 0x1463e7f3
jle 0x41861a
cmp eax, 0x1463e7f4
je 0x418a3e
cmp eax, 0x16604a38
je 0x418af2
cmp eax, 0x18aca8cd
jne 0x417ec0
cmp dword [esp + 0x64], 0
mov eax, 0xe6078556
mov ecx, 0x65862d67
cmovg eax, ecx
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
cmp eax, 0x5abbbd7c
jle 0x41864d
cmp eax, 0x5abbbd7d
je 0x418b72
cmp eax, 0x5d0ce56a
je 0x418b86
cmp eax, 0x6085d689
jne 0x417ec0
mov eax, dword [esp + 0x34]
mov ecx, 0x13641f9
add eax, 2
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x38]
cmp eax, dword [ebp + 0x24]
mov eax, 0xa2b8ba37
cmova eax, ecx
jmp 0x418f11
cmp eax, 0x8b298538
je 0x418b98
cmp eax, 0x8ccacf61
je 0x418bb4
cmp eax, 0x90dc3603
jne 0x417ec0
mov eax, dword [esp + 0x74]
mov eax, dword [esp + 0x74]
mov eax, dword [esp + 0x74]
mov eax, dword [esp + 0x74]
mov eax, dword [esp + 0x74]
mov eax, dword [esp + 0x74]
mov eax, dword [esp + 0x74]
mov eax, dword [esp + 0x74]
mov eax, dword [esp + 0x74]
mov eax, dword [esp + 0x74]
mov eax, 0x6241d5d4
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
cmp eax, 0xf4663038
je 0x418be7
cmp eax, 0x13641f9
je 0x418bfd
cmp eax, 0x6e0cf74
jne 0x417ec0
mov eax, dword [esp + 0x20]
mov esi, 0xe9aa47c6
mov dword [esp + 0x8c], eax
mov eax, dword [0x44f568]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0xfb6efa68
not eax
mov edx, eax
and edx, 0x4910597
or ecx, edx
mov edx, dword [0x44f56c]
xor ecx, 0x4910596
or ecx, eax
cmp ecx, 0xffffffff
sete al
sete byte [esp + 0x90]
cmp edx, 0xa
setl cl
setl byte [esp + 0x98]
xor al, cl
mov edx, eax
not dl
and dl, cl
mov ecx, edx
xor cl, al
test al, al
mov eax, 0x92e2a918
cmovne eax, esi
test dl, dl
mov edx, 0x92e2a918
cmove eax, edx
test cl, cl
mov ecx, dword [ebp + 0x18]
mov edx, 0x45db3d0d
cmovne eax, esi
mov ecx, dword [ecx + 0x14]
cmp edx, 0xe9aa47c5
jg 0x418410
cmp edx, 0x92e2a918
je 0x418474
cmp edx, 0xb441f633
jne 0x4183e0
mov dword [esp + 0xa0], ecx
mov edx, eax
cmp edx, 0xe9aa47c5
jle 0x4183e8
nop dword [eax]
cmp edx, 0xe9aa47c6
je 0x418df7
cmp edx, 0x45db3d0d
jne 0x4183e0
movzx edx, byte [esp + 0x90]
mov dh, byte [esp + 0x98]
mov edi, 0xb441f633
mov esi, 0x92e2a918
xor dl, 1
xor dh, 1
mov ebx, edx
or bl, dh
xor dh, dl
mov dl, bl
xor dl, dh
test dl, 1
cmovne edi, esi
test dh, 1
mov esi, 0xb441f633
mov edx, edi
cmovne edx, esi
test bl, 1
cmovne edx, edi
cmp edx, 0xe9aa47c5
jle 0x4183e8
jmp 0x418410
mov edx, 0xb441f633
cmp edx, 0xe9aa47c5
jle 0x4183e8
jmp 0x418410
cmp eax, 0x3aa6bb8d
je 0x418e4f
cmp eax, 0x3ad06754
je 0x4196c5
cmp eax, 0x3c032f4e
jne 0x417ec0
mov eax, dword [esp + 0x74]
mov ecx, dword [ebp + 0x18]
cmp eax, dword [ecx + 0x20]
mov eax, 0x4e1a3667
mov ecx, 0x3ad06754
cmovb eax, ecx
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
cmp eax, 0x6ff32393
je 0x418ee8
cmp eax, 0x797c5dd0
je 0x419733
cmp eax, 0x7d1c228d
jne 0x417ec0
mov eax, dword [0x44f750]
mov ecx, dword [0x44f754]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
xor edx, 1
not eax
and eax, 0xfffffffe
or edx, eax
mov eax, edx
and edx, 0x4307cf96
not eax
and eax, 0xbcf83069
or edx, eax
xor edx, 0x4307cf96
sete al
cmp ecx, 0xa
setl dl
cmp ecx, 9
setg cl
mov ah, dl
or dl, al
xor cl, al
xor ah, al
xor dl, 1
or dl, ah
mov ch, cl
mov eax, 0xc25c3dfc
xor ch, dl
test dl, dl
mov edx, 0x6ff32393
cmovne eax, edx
test cl, cl
cmovne eax, edx
test ch, ch
mov edx, 0xc25c3dfc
jmp 0x418adf
cmp eax, 0xbe289faf
je 0x4198b9
cmp eax, 0xad33f9ca
jne 0x417ec0
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x88]
sub ecx, eax
mov dword [esp + 0x6c], ecx
lea ecx, [esp + 0xc0]
movsx eax, byte [esp + 0x5b]
push eax
push 1
push dword [esp + 0x74]
call fcn.00412e40
mov eax, dword [esp + 0x84]
mov ecx, 0x2f6691f6
inc eax
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x70]
cmp byte [eax], 0
mov edx, dword [esp + 0x84]
mov eax, 0xcead3379
cmovg eax, ecx
mov dword [esp + 0x14], edx
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
cmp eax, 0xc15df468
je 0x418efd
cmp eax, 0xc1a39d0d
jne 0x417ec0
mov eax, dword [esp + 0x34]
mov ecx, dword [ebp + 0x20]
movsx eax, byte [eax + ecx + 1]
mov ecx, 0xf4663038
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
cmp eax, 0x78
mov eax, 0xc15df468
jmp 0x4197be
cmp eax, 0x8cf5132
je 0x418f31
cmp eax, 0x104a982e
jne 0x417ec0
mov ecx, dword [esp + 0x78]
mov eax, 0x6e0cf74
mov dword [esp + 0x20], ecx
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
cmp eax, 0x3c4fef22
je 0x418f53
cmp eax, 0x4e1a3667
jne 0x417ec0
mov eax, 0x6e0cf74
mov dword [esp + 0x20], 0
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
lea eax, [ebp + 0x10]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [esp + 0x8c]
mov dword [esp + 0xa4], edx
mov dword [esp + 0xa0], ecx
mov ecx, 0x7102bba8
nop word cs:[eax + eax]
nop dword [eax]
cmp ecx, 0x3cce678
je 0x4186f0
cmp ecx, 0x6562f933
je 0x418f6f
cmp ecx, 0x7102bba8
jne 0x4186b0
mov dword [esp + 0x98], eax
mov ecx, 0x3cce678
mov edx, 0x6562f933
cmp dword [esp + 0x98], 0
cmove ecx, edx
cmp ecx, 0x3cce678
jne 0x4186b8
movsx eax, byte [ebp + 0x1c]
lea ecx, [esp + 0xa0]
push eax
call fcn.004167b0
mov eax, dword [esp + 0x98]
dec eax
jmp 0x41869d
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x1c], eax
mov eax, 0x99d10e33
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x18], ecx
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
lea ecx, [esp + 0xc0]
call fcn.00406090
lea ecx, [ebp + 0x10]
mov edx, dword [ecx]
mov edi, dword [ecx + 4]
mov ecx, dword [esp + 0x80]
mov dword [esp + 0xa4], edi
mov dword [esp + 0xa0], edx
mov edx, 0x60be5ec2
nop
cmp edx, 0xe4b391e5
je 0x4187b0
cmp edx, 0x3ff01175
je 0x41902c
cmp edx, 0x60be5ec2
jne 0x418760
mov dword [esp + 0x90], ecx
mov dword [esp + 0x98], eax
mov edx, 0xe4b391e5
mov edi, 0x3ff01175
cmp dword [esp + 0x90], 0
cmove edx, edi
cmp edx, 0xe4b391e5
jne 0x418768
nop word [eax + eax]
mov eax, dword [esp + 0x98]
lea ecx, [esp + 0xa0]
movsx eax, byte [eax]
push eax
call fcn.004167b0
mov ecx, dword [esp + 0x90]
mov eax, dword [esp + 0x98]
dec ecx
inc eax
jmp 0x418759
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x74], eax
mov eax, dword [ebp + 0x18]
mov ecx, eax
mov eax, dword [eax + 0x24]
cmp dword [ecx + 0x20], 1
mov ecx, 0x4e1a3667
sbb eax, 0
mov eax, 0x3c032f4e
cmovl eax, ecx
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
mov eax, dword [esp + 0x2c]
cmp eax, 0x2d
sete al
mov dword [esp + 0xc], eax
mov eax, 0xaab0f4fe
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
mov eax, dword [ebp + 0x18]
mov edi, 0x104a982e
mov eax, dword [eax + 0x20]
sub eax, dword [esp + 0x74]
mov dword [esp + 0x78], eax
mov eax, dword [0x44f750]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0x66480e49
not eax
mov edx, eax
and eax, 0xfffffffe
and edx, 0x99b7f1b6
or edx, ecx
mov ecx, dword [0x44f754]
xor edx, 0x99b7f1b7
or eax, edx
cmp eax, 0xffffffff
setne al
sete dl
cmp ecx, 0xa
setl dh
cmp ecx, 9
setg cl
and dh, al
mov ah, cl
and dl, cl
xor cl, al
and ah, al
or dh, dl
or cl, ah
mov eax, ecx
xor al, dh
mov eax, 0x90dc3603
cmovne edi, eax
test cl, cl
mov eax, 0x104a982e
cmovne eax, edi
test dh, dh
cmove eax, edi
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
mov eax, dword [0x44f750]
mov edi, 0x8b298538
mov esi, dword [esp + 0x1c]
lea ecx, [eax - 1]
mov dword [esp + 0x88], esi
imul ecx, eax
mov eax, ecx
and ecx, 0xb922f5c
not eax
and eax, 0xf46dd0a3
or ecx, eax
mov eax, ecx
xor ecx, 0x1001c022
xor eax, 0xb922f5c
and ecx, 0x1a13e96e
mov edx, eax
and eax, 0xfffffffe
and edx, 0xe5ec1691
or edx, ecx
xor edx, 0xe5ec1690
or eax, edx
mov ecx, eax
and eax, 0xc7163c96
not ecx
and ecx, 0x38e9c369
or eax, ecx
mov ecx, dword [0x44f754]
xor eax, 0xc7163c96
sete dl
setne al
cmp ecx, 9
setg ah
cmp ecx, 0xa
setl cl
and dl, ah
and cl, al
or dl, cl
mov cl, ah
and ah, al
xor cl, al
or ah, cl
mov cl, ah
xor cl, dl
test ah, ah
mov eax, 0x797c5dd0
cmovne eax, edi
test dl, dl
mov edx, dword [esp + 0x18]
cmove eax, edi
test cl, cl
mov dword [esp + 0x84], edx
mov edx, 0x797c5dd0
jmp 0x4196b2
mov eax, dword [esp + 0x34]
mov ecx, dword [ebp + 0x20]
cmp byte [ecx + eax], 0x30
mov eax, 0x13641f9
mov ecx, 0xc1a39d0d
jmp 0x418f0e
mov eax, dword [esp + 0xa0]
mov ecx, eax
and eax, 0x7ebf6207
not ecx
mov edx, ecx
and edx, 0x81409df8
or eax, edx
xor eax, 0x8140adf8
or eax, ecx
mov ecx, 0x6085d689
cmp eax, 0xffffcfff
mov eax, 0x5d0ce56a
jmp 0x4197be
mov eax, dword [ebp + 0x20]
mov esi, 0x6ff32393
movsx eax, byte [eax]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x2c]
cmp eax, 0x2b
mov eax, dword [0x44f750]
sete byte [esp + 0x33]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 1
not eax
mov edx, eax
and edx, 0xfffffffe
or ecx, edx
not ecx
or ecx, eax
cmp ecx, 0xffffffff
sete al
cmp dword [0x44f754], 0xa
setl cl
xor al, cl
mov edx, eax
xor dl, 1
and cl, dl
xor dl, cl
mov edx, 0xc245d397
cmovne edx, esi
test al, al
mov esi, 0xc245d397
mov eax, edx
cmovne eax, esi
test cl, cl
jmp 0x4196b2
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x88]
mov esi, 0x69ebf345
sub ecx, eax
mov eax, dword [esp + 0x64]
cmp eax, ecx
mov eax, dword [0x44f750]
setb byte [esp + 0x6b]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0x3e6a8eba
not eax
and eax, 0xc1957145
or ecx, eax
mov eax, ecx
xor ecx, 0xc1855145
xor eax, 0x3e6a8eba
and ecx, 0xe3cf5d77
mov edx, eax
and eax, 0xfffffffe
and edx, 0x1c30a288
or edx, ecx
mov ecx, dword [0x44f754]
xor edx, 0x1c30a289
or eax, edx
cmp eax, 0xffffffff
sete al
setne dl
cmp ecx, 0xa
setl ah
cmp ecx, 9
setg cl
and ah, dl
and al, cl
or cl, dl
mov edx, 0x8cf5132
or ah, al
mov al, cl
xor al, ah
cmovne edx, esi
test ah, ah
mov esi, 0x8cf5132
mov eax, edx
cmovne eax, esi
test cl, cl
cmovne eax, edx
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
mov eax, dword [0x44f750]
mov esi, 0x3aa6bb8d
mov edi, 0xf24423f1
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0x74f86505
not eax
mov edx, eax
and eax, 0xfffffffe
and edx, 0x8b079afa
or edx, ecx
xor edx, 0x8b079afb
or eax, edx
mov ecx, eax
and eax, 0x3dd20573
not ecx
and ecx, 0xc22dfa8c
or eax, ecx
mov ecx, dword [0x44f754]
xor eax, 0x3dd20573
sete al
setne dl
cmp ecx, 0xa
setl ah
cmp ecx, 9
setg cl
xor ah, al
or cl, dl
mov dh, ah
xor dh, cl
test ah, ah
mov eax, 0xf24423f1
cmovne eax, esi
test cl, cl
cmovne eax, edi
test dh, dh
jmp 0x419720
cmp byte [esp + 0x6a], 0
mov eax, 0xe6078556
mov ecx, 0x18aca8cd
jmp 0x418f40
mov eax, 0x13641f9
mov dword [esp + 8], 0x448b41
jmp 0x418f19
mov eax, dword [esp + 0x84]
mov eax, 0x797c5dd0
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
mov ecx, dword [esp + 0x50]
mov eax, dword [ecx]
call dword [eax + 0xc]
mov edi, dword [esp + 0x48]
lea ecx, [esp + 0xc0]
mov ebx, eax
call fcn.00406090
mov byte [eax + edi], bl
mov eax, 0x16604a38
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
mov dword [esp + 8], 0x448b36
mov eax, 0x13641f9
mov ecx, dword [esp + 0x38]
jmp 0x418f1d
mov eax, dword [esp + 4]
mov dword [esp + 0x80], eax
push dword [esp + 8]
mov eax, dword [ebp + 0x20]
mov edi, eax
push eax
call fcn.0042c9c0
add esp, 8
mov dword [esp + 0x40], eax
lea eax, [esp + 0x9e]
mov dword [esp + 0x44], eax
mov esi, eax
mov eax, dword [esp + 0x44]
mov eax, dword [esp + 0x44]
mov word [eax], 0x2e
call fcn.0042c4f4
mov eax, dword [eax]
mov al, byte [eax]
mov byte [esp + 0x9e], al
push esi
push edi
call fcn.0042c9c0
add esp, 8
mov dword [esp + 0x48], eax
mov eax, dword [0x44f560]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0x80384738
not eax
mov edx, eax
and edx, 0x7fc7b8c7
or ecx, edx
xor ecx, 0x80384739
xor eax, ecx
test eax, ecx
mov eax, dword [ebp + 0x18]
mov edi, dword [eax + 0x30]
mov eax, dword [0x44f564]
sete byte [esp + 0x90]
cmp eax, 0xa
mov eax, 0x882884e7
setl byte [esp + 0x98]
nop word cs:[eax + eax]
nop dword [eax]
cmp eax, 0xf6564ec3
jg 0x418d20
cmp eax, 0x882884e7
je 0x418cca
cmp eax, 0xe24c3dae
jne 0x418cb0
jmp 0x41905c
movzx eax, byte [esp + 0x90]
movzx ecx, byte [esp + 0x98]
mov esi, 0xf6564ec4
mov edx, eax
mov ch, al
xor dl, 1
and dl, cl
xor cl, 1
xor ch, cl
and cl, al
and ch, al
or cl, dl
mov edx, 0x2458cea1
mov al, ch
xor al, cl
test al, 1
cmovne edx, esi
test cl, 1
mov eax, edx
cmovne eax, esi
test ch, 1
cmove eax, edx
cmp eax, 0xf6564ec3
jle 0x418cb7
nop word cs:[eax + eax]
cmp eax, 0xf6564ec4
je 0x418d4f
cmp eax, 0x2458cea1
jne 0x418cb0
mov ecx, dword [edi + 4]
mov dword [esp + 0xa4], ecx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, 0xf6564ec4
cmp eax, 0xf6564ec3
jle 0x418cb7
jmp 0x418d20
mov ecx, dword [edi + 4]
mov dword [esp + 0xa4], ecx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44f560]
mov esi, 0x2458cea1
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0x40e5d0ac
not eax
and eax, 0xbf1a2f53
or ecx, eax
mov eax, ecx
xor ecx, 0x1b0a0b12
xor eax, 0x40e5d0ac
and ecx, 0x5b8a5b32
mov edx, eax
and eax, 0xfffffffe
and edx, 0xa475a4cd
or edx, ecx
mov ecx, dword [0x44f564]
xor edx, 0xa475a4cc
or eax, edx
cmp eax, 0xffffffff
sete al
setne dl
cmp ecx, 0xa
setl ah
cmp ecx, 9
setg cl
and ah, dl
and al, cl
or cl, dl
mov edx, 0xe24c3dae
or ah, al
mov al, cl
xor al, ah
cmovne edx, esi
test ah, ah
mov esi, 0xe24c3dae
mov eax, edx
cmovne eax, esi
test cl, cl
cmovne eax, edx
cmp eax, 0xf6564ec3
jle 0x418cb7
jmp 0x418d20
mov eax, dword [esp + 0xa0]
mov ecx, eax
and eax, 0x345652ab
not ecx
mov edx, ecx
and edx, 0xcba9ad54
or eax, edx
xor eax, 0xcba9ac94
or eax, ecx
not eax
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x7c]
cmp eax, 0x40
sete al
cmp ecx, 0x100
sete cl
mov edx, eax
and dl, cl
xor al, cl
mov ecx, 0x8a154a66
or al, dl
mov eax, 0x86c2d48d
cmovne eax, ecx
jmp 0x418f40
mov eax, dword [esp + 0x48]
cmp eax, dword [ebp + 0x24]
mov eax, dword [esp + 0x40]
je 0x418e60
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0xa8]
mov dword [esp + 0x5c], eax
call fcn.00405960
mov dword [esp + 0x60], eax
mov eax, dword [0x44f750]
mov ecx, dword [0x44f754]
mov esi, 0xf24423f1
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
and edx, 0xd4094394
not eax
and eax, 0x2bf6bc6b
or edx, eax
mov eax, edx
xor edx, 0x2bf6bc6a
xor eax, 0xd4094394
and eax, 0xfffffffe
or edx, eax
cmp edx, 0xffffffff
sete dl
setne al
cmp ecx, 9
setg ah
cmp ecx, 0xa
setl cl
and dl, ah
and cl, al
or dl, cl
mov cl, ah
xor ah, al
and cl, al
or ah, cl
mov ecx, 0x8725168e
mov al, ah
xor al, dl
cmovne ecx, esi
test ah, ah
mov eax, 0x8725168e
jmp 0x4197b9
mov eax, 0xc25c3dfc
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
mov eax, dword [esp + 0x3c]
mov ecx, 0xf4663038
cmp eax, 0x58
mov eax, 0x13641f9
cmove eax, ecx
mov dword [esp + 8], 0x448b36
mov ecx, dword [esp + 0x34]
mov dword [esp + 4], ecx
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
cmp byte [esp + 0x6b], 0
mov eax, 0xe6078556
mov ecx, 0xad33f9ca
cmovne eax, ecx
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
mov eax, dword [esp + 0x28]
mov dword [esp + 0xc], 0
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
mov edi, dword [esp + 0xa0]
mov ebx, dword [esp + 0xa4]
lea eax, [ebp + 0x10]
lea ecx, [esp + 0xc0]
mov dword [eax + 4], ebx
mov dword [eax], edi
call fcn.00406090
mov ecx, dword [esp + 0x80]
mov dword [esp + 0xa4], ebx
mov dword [esp + 0xa0], edi
mov edx, 0x60be5ec2
nop dword [eax + eax]
cmp edx, 0xe4b391e5
je 0x419000
cmp edx, 0x3ff01175
je 0x41986b
cmp edx, 0x60be5ec2
jne 0x418fb0
mov dword [esp + 0x90], ecx
mov dword [esp + 0x98], eax
mov edx, 0xe4b391e5
mov edi, 0x3ff01175
cmp dword [esp + 0x90], 0
cmove edx, edi
cmp edx, 0xe4b391e5
jne 0x418fb8
nop word [eax + eax]
mov eax, dword [esp + 0x98]
lea ecx, [esp + 0xa0]
movsx eax, byte [eax]
push eax
call fcn.004167b0
mov ecx, dword [esp + 0x90]
mov eax, dword [esp + 0x98]
dec ecx
inc eax
jmp 0x418fa6
movsd xmm0, qword [esp + 0xa0]
lea eax, [ebp + 0x10]
movsd qword [eax], xmm0
mov eax, 0xbe289faf
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x10], ecx
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
lea ebx, [esp + 0xa0]
push ebx
call fcn.004126b0
add esp, 4
mov ecx, ebx
mov edi, eax
call fcn.00409a30
lea eax, [esp + 0xc0]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x4c]
mov eax, dword [0x44f6a8]
mov ecx, dword [0x44f6ac]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
xor edx, 1
not eax
and eax, 0xfffffffe
or edx, eax
mov eax, 0x59aaed9d
cmp edx, 0xffffffff
sete byte [esp + 0x98]
cmp ecx, 0xa
setl byte [esp + 0xa0]
nop dword [eax]
cmp eax, 0x2606f151
jg 0x419120
cmp eax, 0xb30c0061
je 0x41923e
cmp eax, 0xc3407acf
jne 0x4190c0
mov eax, 0xf
mov dword [esp + 0xc0], 0
mov dword [esp + 0xd0], 0
lea ecx, [esp + 0xc0]
mov dword [esp + 0xd4], eax
push 0
push dword [ebp + 0x24]
call fcn.004144b0
mov eax, 0x2606f152
cmp eax, 0x2606f151
jle 0x4190c7
nop dword [eax + eax]
cmp eax, 0x2606f152
je 0x419171
cmp eax, 0x59aaed9d
jne 0x4190c0
movzx eax, byte [esp + 0x98]
movzx ecx, byte [esp + 0xa0]
mov ebx, 0x2606f152
xor al, 1
xor cl, 1
mov edx, eax
or dl, cl
xor cl, al
mov eax, edx
xor al, cl
test al, 1
mov eax, 0xc3407acf
cmovne ebx, eax
test cl, 1
mov ecx, 0x2606f152
mov eax, ebx
cmovne eax, ecx
test dl, 1
jmp 0x41922b
mov eax, 0xf
mov dword [esp + 0xc0], 0
mov dword [esp + 0xd0], 0
lea ecx, [esp + 0xc0]
mov dword [esp + 0xd4], eax
push 0
push dword [ebp + 0x24]
call fcn.004144b0
mov ecx, dword [0x44f6a8]
mov eax, dword [0x44f6ac]
mov ebx, 0xb30c0061
lea edx, [ecx - 1]
imul edx, ecx
mov ecx, edx
and edx, 0x57db4e5
not ecx
and ecx, 0xfa824b1a
or edx, ecx
mov ecx, edx
xor edx, 0xfa824b1b
xor ecx, 0x57db4e4
and ecx, 0xfffffffe
or edx, ecx
mov ecx, edx
and edx, 0xf548e07a
not ecx
and ecx, 0xab71f85
or edx, ecx
xor edx, 0xf548e07a
sete cl
setne dl
cmp eax, 0xa
setl ch
cmp eax, 9
setg dh
and ch, dl
and cl, dh
or dh, dl
or ch, cl
mov al, dh
xor al, ch
mov eax, 0xc3407acf
cmovne ebx, eax
test ch, ch
mov ecx, 0xb30c0061
mov eax, ebx
cmovne eax, ecx
test dh, dh
cmovne eax, ebx
cmp eax, 0x2606f151
jle 0x4190c7
jmp 0x419120
lea ecx, [esp + 0xc0]
call fcn.00406090
mov edx, dword [edi]
mov ecx, edi
push eax
push dword [esp + 0x28]
push dword [ebp + 0x20]
call dword [edx + 0x1c]
mov eax, dword [ebp + 0x18]
mov ecx, dword [0x44f564]
mov edi, dword [eax + 0x30]
mov eax, dword [0x44f560]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
xor edx, 1
not eax
and eax, 0xfffffffe
or edx, eax
mov eax, edx
and edx, 0x89f0c7c2
not eax
and eax, 0x760f383d
or edx, eax
mov eax, 0x882884e7
xor edx, 0x89f0c7c2
sete byte [esp + 0x90]
cmp ecx, 0xa
setl byte [esp + 0x98]
nop dword [eax + eax]
cmp eax, 0xf6564ec3
jg 0x419320
cmp eax, 0x882884e7
je 0x4192ca
cmp eax, 0xe24c3dae
jne 0x4192b0
jmp 0x4193e0
movzx eax, byte [esp + 0x90]
movzx ecx, byte [esp + 0x98]
mov esi, 0xf6564ec4
mov ebx, 0x2458cea1
xor al, 1
xor cl, 1
mov edx, eax
or dl, cl
xor cl, al
mov eax, 0x2458cea1
mov ch, cl
xor ch, dl
test cl, 1
cmovne eax, esi
test dl, 1
cmovne eax, ebx
test ch, 1
cmove eax, esi
cmp eax, 0xf6564ec3
jle 0x4192b7
nop word cs:[eax + eax]
nop dword [eax + eax]
cmp eax, 0xf6564ec4
je 0x41934f
cmp eax, 0x2458cea1
jne 0x4192b0
mov ecx, dword [edi + 4]
mov dword [esp + 0xa4], ecx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, 0xf6564ec4
cmp eax, 0xf6564ec3
jle 0x4192b7
jmp 0x419320
mov ecx, dword [edi + 4]
mov dword [esp + 0xa4], ecx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x44f560]
mov esi, 0xe24c3dae
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0x2f371570
not eax
mov edx, eax
and eax, 0xfffffffe
and edx, 0xd0c8ea8f
or edx, ecx
xor edx, 0xd0c8ea8e
or eax, edx
mov ecx, eax
and eax, 0x55a3ec34
not ecx
and ecx, 0xaa5c13cb
or eax, ecx
xor eax, 0x55a3ec34
sete al
cmp dword [0x44f564], 0xa
setl cl
xor al, cl
mov edx, eax
not dl
and dl, cl
mov ecx, edx
xor cl, al
mov ecx, 0x2458cea1
cmovne ecx, esi
test al, al
mov eax, ecx
cmovne eax, esi
test dl, dl
cmove eax, ecx
cmp eax, 0xf6564ec3
jle 0x4192b7
jmp 0x419320
lea edi, [esp + 0xa0]
push edi
call fcn.00412a70
add esp, 4
mov ecx, edi
mov dword [esp + 0x50], eax
call fcn.00409a30
lea eax, [esp + 0xa8]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x54]
mov edi, dword [esp + 0x50]
mov eax, dword [0x44f6b0]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 1
not eax
mov edx, eax
and edx, 0xfffffffe
or ecx, edx
not ecx
or ecx, eax
mov eax, dword [0x44f6b4]
cmp ecx, 0xffffffff
sete byte [esp + 0x98]
cmp eax, 0xa
mov eax, 0x46517ddb
setl byte [esp + 0xa0]
nop dword [eax + eax]
cmp eax, 0x46488fd5
jg 0x419490
cmp eax, 0xc5868360
je 0x41946a
cmp eax, 0xfbcae514
jne 0x419450
jmp 0x419575
mov eax, dword [edi]
lea edx, [esp + 0xa8]
mov ecx, edi
push edx
call dword [eax + 0x14]
mov eax, 0x46488fd6
cmp eax, 0x46488fd5
jle 0x419457
nop word cs:[eax + eax]
nop
cmp eax, 0x46488fd6
je 0x4194f7
cmp eax, 0x46517ddb
jne 0x419450
movzx eax, byte [esp + 0x98]
movzx ecx, byte [esp + 0xa0]
mov edx, ecx
mov ch, cl
mov ah, al
xor dl, 1
and ch, dl
xor ah, dl
xor ch, 1
xor ah, 1
mov dh, ch
or ch, dl
xor dh, dl
xor ch, 1
or ch, dh
mov edx, 0xc5868360
xor ch, al
or al, cl
xor al, 1
or al, ah
mov cl, al
xor cl, ch
test al, 1
mov eax, 0x46488fd6
cmovne eax, edx
test ch, 1
cmove eax, edx
test cl, 1
mov edx, 0x46488fd6
jmp 0x419562
mov eax, dword [edi]
lea edx, [esp + 0xa8]
mov ecx, edi
push edx
call dword [eax + 0x14]
mov eax, dword [0x44f6b0]
mov esi, 0xc5868360
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0x37ec9b3
not eax
mov edx, eax
and edx, 0xfc81364c
or ecx, edx
xor ecx, 0x37ec9b2
xor eax, ecx
test eax, ecx
sete al
cmp dword [0x44f6b4], 0xa
setl cl
xor al, cl
mov edx, eax
xor dl, 1
and cl, dl
xor dl, cl
mov edx, 0xfbcae514
cmovne edx, esi
test al, al
mov esi, 0xfbcae514
mov eax, edx
cmovne eax, esi
test cl, cl
cmove eax, edx
cmp eax, 0x46488fd5
jle 0x419457
jmp 0x419490
mov ecx, dword [esp + 0x50]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov byte [esp + 0x5b], al
mov ecx, 0x16604a38
mov eax, dword [esp + 0x48]
cmp eax, dword [ebp + 0x24]
mov eax, 0x8ccacf61
jmp 0x4197be
lea ecx, [esp + 0xc0]
call fcn.00406090
lea ecx, [ebp + 0x10]
mov edx, dword [ecx]
mov edi, dword [ecx + 4]
mov ecx, dword [esp + 0x80]
mov dword [esp + 0xa4], edi
mov dword [esp + 0xa0], edx
mov edx, 0x60be5ec2
nop word cs:[eax + eax]
cmp edx, 0xe4b391e5
je 0x419620
cmp edx, 0x3ff01175
je 0x4197d1
cmp edx, 0x60be5ec2
jne 0x4195d0
mov dword [esp + 0x90], ecx
mov dword [esp + 0x98], eax
mov edx, 0xe4b391e5
mov edi, 0x3ff01175
cmp dword [esp + 0x90], 0
cmove edx, edi
cmp edx, 0xe4b391e5
jne 0x4195d8
nop word [eax + eax]
mov eax, dword [esp + 0x98]
lea ecx, [esp + 0xa0]
movsx eax, byte [eax]
push eax
call fcn.004167b0
mov ecx, dword [esp + 0x90]
mov eax, dword [esp + 0x98]
dec ecx
inc eax
jmp 0x4195c1
mov eax, dword [0x44f750]
mov ecx, dword [0x44f754]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
and edx, 1
not eax
mov edi, eax
and edi, 0xfffffffe
or edx, edi
not edx
or edx, eax
cmp edx, 0xffffffff
sete al
setne dl
cmp ecx, 9
setg ah
cmp ecx, 0xa
setl cl
mov ch, ah
xor ah, dl
and dl, cl
or cl, al
and ch, al
xor cl, 1
or ch, dl
mov edx, 0x1463e7f4
or cl, ah
mov eax, ecx
xor al, ch
mov eax, 0x69ebf345
cmovne edx, eax
test cl, cl
mov eax, 0x1463e7f4
cmovne eax, edx
test ch, ch
cmove eax, edx
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
mov eax, dword [0x44f750]
mov esi, 0x6241d5d4
mov edi, 0x90dc3603
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 1
not eax
mov edx, eax
and edx, 0xfffffffe
or ecx, edx
xor eax, ecx
test eax, ecx
mov eax, dword [0x44f754]
sete cl
setne dl
cmp eax, 0xa
setl ch
cmp eax, 9
mov eax, 0x90dc3603
setg dh
and ch, dl
and cl, dh
or dh, dl
or ch, cl
mov bl, dh
xor bl, ch
test ch, ch
cmovne eax, esi
test dh, dh
cmovne eax, edi
test bl, bl
cmove eax, esi
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
mov eax, dword [esp + 0x84]
mov edi, 0x8b298538
movsx eax, byte [eax]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x64]
mov ecx, dword [0x44f754]
cmp eax, 0x7f
mov eax, dword [0x44f750]
setne byte [esp + 0x6a]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
xor edx, 1
not eax
and eax, 0xfffffffe
or edx, eax
mov eax, edx
and edx, 0x720ee886
not eax
and eax, 0x8df11779
or edx, eax
xor edx, 0x720ee886
sete dl
setne al
cmp ecx, 9
setg ah
cmp ecx, 0xa
setl cl
and dl, ah
and cl, al
or dl, cl
mov cl, ah
xor ah, al
and cl, al
or ah, cl
mov ecx, 0x5abbbd7d
mov al, ah
xor al, dl
cmovne ecx, edi
test ah, ah
mov eax, 0x5abbbd7d
cmovne eax, ecx
test dl, dl
cmove eax, ecx
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0xa4]
lea eax, [ebp + 0x10]
mov dword [eax + 4], edx
mov dword [eax], ecx
mov eax, dword [esp + 0x8c]
mov dword [esp + 0xa4], edx
mov dword [esp + 0xa0], ecx
mov ecx, 0x7102bba8
nop word cs:[eax + eax]
nop dword [eax + eax]
cmp ecx, 0x3cce678
je 0x419850
cmp ecx, 0x6562f933
je 0x41986b
cmp ecx, 0x7102bba8
jne 0x419810
mov dword [esp + 0x98], eax
mov ecx, 0x3cce678
mov edx, 0x6562f933
cmp dword [esp + 0x98], 0
cmove ecx, edx
cmp ecx, 0x3cce678
jne 0x419818
nop dword [eax]
movsx eax, byte [ebp + 0x1c]
lea ecx, [esp + 0xa0]
push eax
call fcn.004167b0
mov eax, dword [esp + 0x98]
dec eax
jmp 0x4197fc
movsd xmm0, qword [esp + 0xa0]
lea eax, [ebp + 0x10]
mov dword [esp + 0x10], 0
movsd qword [eax], xmm0
mov eax, 0xbe289faf
cmp eax, 0x8cf5131
jle 0x417ecb
jmp 0x417f80
cmp byte [esp + 0x33], 0
mov eax, 0x23a65ad0
mov ecx, 0xaab0f4fe
cmovne eax, ecx
mov cl, 1
jmp 0x417eb2
mov esi, dword [esp + 0x74]
lea ecx, [esp + 0xc0]
sub esi, dword [esp + 0x80]
mov edi, dword [esp + 0x80]
call fcn.00406090
lea ecx, [ebp + 0x10]
add eax, edi
lea edi, [esp + 0xa0]
mov ebx, 0x3ff01175
mov edx, ecx
mov ecx, dword [ecx]
mov edx, dword [edx + 4]
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xa4], edx
mov ecx, 0x60be5ec2
nop word cs:[eax + eax]
nop dword [eax]
cmp ecx, 0xe4b391e5
je 0x419950
cmp ecx, 0x3ff01175
je 0x419974
cmp ecx, 0x60be5ec2
jne 0x419910
mov dword [esp + 0x90], esi
mov dword [esp + 0x98], eax
mov ecx, 0xe4b391e5
cmp dword [esp + 0x90], 0
cmove ecx, ebx
cmp ecx, 0xe4b391e5
jne 0x419918
nop
mov eax, dword [esp + 0x98]
mov ecx, edi
movsx eax, byte [eax]
push eax
call fcn.004167b0
mov esi, dword [esp + 0x90]
mov eax, dword [esp + 0x98]
dec esi
inc eax
jmp 0x4198fd
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0xa4]
mov esi, dword [ebp + 0x18]
lea edx, [ebp + 0x10]
lea edi, [esp + 0xa0]
mov ebx, 0x6562f933
mov dword [edx + 4], ecx
mov dword [edx], eax
mov dword [esi + 0x24], 0
mov dword [esi + 0x20], 0
movsx esi, byte [ebp + 0x1c]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa0], eax
mov eax, 0x7102bba8
nop
cmp eax, 0x3cce678
je 0x419a00
cmp eax, 0x6562f933
je 0x419a16
cmp eax, 0x7102bba8
jne 0x4199c0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x98], eax
mov eax, 0x3cce678
cmp dword [esp + 0x98], 0
cmove eax, ebx
cmp eax, 0x3cce678
jne 0x4199c7
nop word [eax + eax]
mov ecx, edi
push esi
call fcn.004167b0
mov eax, dword [esp + 0x98]
dec eax
mov dword [esp + 0x10], eax
jmp 0x4199b9
movsd xmm0, qword [esp + 0xa0]
mov eax, dword [ebp + 0xc]
mov esi, 0x39fa579a
movsd qword [eax], xmm0
lea eax, [esp + 0xa8]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0xa0]
mov eax, 0x5c86573e
nop word cs:[eax + eax]
nop
cmp eax, 0xabac62fb
je 0x419bbd
cmp eax, 0xeb4c9b95
je 0x419bec
cmp eax, 0x5c86573e
jne 0x419a50
mov eax, dword [esp + 0xa0]
mov ecx, dword [0x44f540]
lea edx, [ecx - 1]
imul edx, ecx
mov ecx, edx
and edx, 1
not ecx
mov edi, ecx
and edi, 0xfffffffe
or edx, edi
mov edi, 0xdb26e4c3
xor ecx, edx
test ecx, edx
mov ecx, dword [0x44f544]
setne dl
sete byte [esp + 0x97]
cmp ecx, 9
setg dh
cmp ecx, 0xa
mov ecx, 0xa45fe795
mov bl, dh
setl byte [esp + 0x90]
xor dh, dl
or bl, dl
mov dl, bl
xor dl, dh
test dh, dh
cmovne ecx, edi
test bl, bl
mov ebx, 0xa45fe795
cmovne ecx, ebx
test dl, dl
mov edx, 0xb6ec62b
cmove ecx, edi
nop word cs:[eax + eax]
nop dword [eax + eax]
cmp edx, 0xb6ec62a
jg 0x419b20
cmp edx, 0xa45fe795
je 0x419b0d
cmp edx, 0xdb26e4c3
jne 0x419af0
jmp 0x419b9d
mov edx, 0x39fa579a
cmp edx, 0xb6ec62a
jle 0x419af8
nop word [eax + eax]
cmp edx, 0x39fa579a
je 0x419b81
cmp edx, 0xb6ec62b
jne 0x419af0
movzx edx, byte [esp + 0x97]
mov dh, byte [esp + 0x90]
mov edi, 0xa45fe795
mov ebx, edx
mov bh, dl
xor bl, 1
and bl, dh
xor dh, 1
xor bh, dh
and dh, dl
and bh, dl
or dh, bl
mov bl, bh
xor bl, dh
test dh, 1
mov edx, 0xa45fe795
cmovne edx, esi
test bh, 1
cmove edx, edi
test bl, 1
cmovne edx, esi
cmp edx, 0xb6ec62a
jle 0x419af8
jmp 0x419b20
cmp dword [eax + 0x14], 0xf
mov edx, ecx
seta byte [esp + 0x98]
cmp edx, 0xb6ec62a
jle 0x419af8
jmp 0x419b20
cmp byte [esp + 0x98], 0
mov eax, 0xeb4c9b95
mov ecx, 0xabac62fb
cmovne eax, ecx
cmp eax, 0xabac62fb
jne 0x419a5b
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0xa0]
mov ecx, dword [ecx + 0x14]
inc ecx
push ecx
push dword [eax]
call fcn.00405670
add esp, 8
mov eax, 0xeb4c9b95
cmp eax, 0xabac62fb
jne 0x419a5b
jmp 0x419bbd
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x10], 0
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x14], 0xf
mov eax, dword [esp + 0xa0]
mov byte [eax], 0
mov eax, dword [esp + 0x54]
lea eax, [esp + 0xc0]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0xa0]
mov eax, 0x5c86573e
cmp eax, 0xabac62fb
je 0x419dd5
cmp eax, 0xeb4c9b95
je 0x419e04
cmp eax, 0x5c86573e
jne 0x419c30
mov edi, dword [esp + 0xa0]
mov ecx, dword [0x44f540]
mov esi, 0xdb26e4c3
mov eax, 0xa45fe795
lea edx, [ecx - 1]
imul edx, ecx
mov ecx, edx
and edx, 1
not ecx
mov ebx, ecx
and ebx, 0xfffffffe
or edx, ebx
not edx
or edx, ecx
mov ecx, dword [0x44f544]
cmp edx, 0xffffffff
sete dl
setne dh
sete byte [esp + 0x97]
cmp ecx, 9
setg bl
cmp ecx, 0xa
setl cl
setl byte [esp + 0x90]
and dl, bl
and cl, dh
or dl, cl
mov ecx, ebx
xor bl, dh
and cl, dh
or bl, cl
mov ecx, 0xdb26e4c3
mov dh, bl
xor dh, dl
test bl, bl
cmovne esi, eax
test dl, dl
cmove esi, eax
test dh, dh
mov edx, 0xb6ec62b
cmove esi, ecx
nop word cs:[eax + eax]
nop dword [eax]
cmp edx, 0xb6ec62a
jg 0x419d10
cmp edx, 0xa45fe795
je 0x419cfd
cmp edx, 0xdb26e4c3
jne 0x419ce0
jmp 0x419db5
mov edx, 0x39fa579a
cmp edx, 0xb6ec62a
jle 0x419ce8
nop word [eax + eax]
cmp edx, 0x39fa579a
je 0x419d96
cmp edx, 0xb6ec62b
jne 0x419ce0
movzx ebx, byte [esp + 0x97]
mov dh, byte [esp + 0x90]
mov eax, ebx
mov dl, bl
mov bh, dh
mov ah, dh
or bl, dh
xor al, 1
xor bh, 1
xor bl, 1
and dl, al
and ah, bh
xor bh, al
xor dl, 1
or bl, bh
mov ecx, edx
or dl, al
xor cl, al
xor dl, 1
mov al, bl
or dl, cl
mov cl, ah
xor ah, dh
and cl, dh
or ah, cl
mov ecx, 0xa45fe795
xor ah, dl
mov edx, 0x39fa579a
xor al, ah
test bl, 1
cmovne edx, ecx
test ah, 1
cmove edx, ecx
test al, 1
mov ecx, 0x39fa579a
cmove edx, ecx
cmp edx, 0xb6ec62a
jle 0x419ce8
jmp 0x419d10
cmp dword [edi + 0x14], 0xf
mov edx, esi
seta byte [esp + 0x98]
cmp edx, 0xb6ec62a
jle 0x419ce8
jmp 0x419d10
cmp byte [esp + 0x98], 0
mov eax, 0xeb4c9b95
mov ecx, 0xabac62fb
cmovne eax, ecx
cmp eax, 0xabac62fb
jne 0x419c3b
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0xa0]
mov ecx, dword [ecx + 0x14]
inc ecx
push ecx
push dword [eax]
call fcn.00405670
add esp, 8
mov eax, 0xeb4c9b95
cmp eax, 0xabac62fb
jne 0x419c3b
jmp 0x419dd5
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x10], 0
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x14], 0xf
mov eax, dword [esp + 0xa0]
mov byte [eax], 0
mov eax, dword [esp + 0x4c]
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0xd8]
xor ecx, ebp
call fcn.0041e8c8
mov eax, dword [ebp + 0xc]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret