Function at 0x4ed144
Capabilities:
Check for software breakpoints
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x1e
push 0
push 0
dec ecx
jne 0x4ed14c
push ecx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x4ee293
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 8], 0x80
mov eax, dword [ebp - 4]
xor edx, edx
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3c]
cdq
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
cmp dword [eax + 0x78], 0
je 0x4ee119
xor eax, eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 0xa
jge 0x4ed361
inc dword [ebp - 0x74]
mov eax, dword [ebp - 0x84]
add eax, dword [ebp - 0x60]
cmp eax, dword [ebp - 0x60]
jle 0x4ed1f2
mov eax, dword [ebp - 0x84]
add eax, 0xb7
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x80]
add eax, 0x51
mov dword [ebp - 0x50], eax
imul eax, dword [ebp - 0x6c], 0x77
mov dword [ebp - 0x5c], eax
imul eax, dword [ebp - 0x7c], 0x70
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x54]
sub eax, dword [ebp - 0x48]
mov dword [ebp - 0x58], eax
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
jmp 0x4ed357
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
mov eax, dword [0x6f5b78]
mov al, byte [eax]
mov byte [ebp - 0x89], al
mov al, byte [ebp - 0x89]
add al, 0x9f
sub al, 0x1a
jae 0x4ed233
sub byte [ebp - 0x89], 0x20
lea eax, [ebp - 0x9c]
mov dl, byte [ebp - 0x89]
mov ecx, 0
call fcn.0040a4d4
push dword [ebp - 0x9c]
lea eax, [ebp - 0xa0]
mov edx, dword [0x6f5d24]
mov dl, byte [edx]
mov ecx, 0
call fcn.0040a4d4
push dword [ebp - 0xa0]
lea eax, [ebp - 0xa4]
mov edx, dword [0x6f5a48]
mov dl, byte [edx]
mov ecx, 0
call fcn.0040a4d4
push dword [ebp - 0xa4]
lea edx, [ebp - 0xa8]
mov eax, 6
call fcn.0042f454
push dword [ebp - 0xa8]
lea edx, [ebp - 0xac]
mov eax, 4
call fcn.0042f454
push dword [ebp - 0xac]
push 0x4ee2b0
lea eax, [ebp - 0xb0]
mov edx, dword [0x6f59f4]
mov dl, byte [edx]
mov ecx, 0
call fcn.0040a4d4
push dword [ebp - 0xb0]
lea eax, [ebp - 0xb4]
mov edx, dword [0x6f5c54]
mov dl, byte [edx]
mov ecx, 0
call fcn.0040a4d4
push dword [ebp - 0xb4]
lea eax, [ebp - 0xb8]
mov edx, dword [0x6f59f4]
mov dl, byte [edx]
mov ecx, 0
call fcn.0040a4d4
push dword [ebp - 0xb8]
lea eax, [ebp - 0x98]
mov edx, 9
call fcn.0040a684
mov edx, dword [ebp - 0x98]
lea eax, [ebp - 0x38]
call fcn.0040ad14
lea eax, [ebp - 0x30]
push eax
mov ecx, 1
mov edx, 1
mov eax, dword [ebp - 0x30]
call fcn.0040b018
lea eax, [ebp - 0x2c]
mov edx, 0x4ee2c0
call fcn.0040a1dc
cmp dword [ebp - 0x74], 0xa
jl 0x4ed1a3
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
mov eax, dword [ebp - 0x38]
mov edx, 0x4ee2e4
call fcn.0040afe0
jne 0x4ed393
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
jmp 0x4ed3b4
lea eax, [ebp - 0x38]
push eax
mov ecx, 2
mov edx, 1
mov eax, dword [ebp - 0x34]
call fcn.0040b018
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
push eax
mov ecx, 3
mov edx, 1
mov eax, dword [ebp - 0x38]
call fcn.0040b018
lea eax, [ebp - 0x2c]
push eax
mov ecx, 1
mov edx, 1
mov eax, dword [ebp - 0x30]
call fcn.0040b018
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x78]
add eax, dword [ebp - 4]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x3c]
mov edx, eax
shl eax, 6
sub eax, edx
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x74]
imul dword [ebp - 0x40]
mov dword [ebp - 0x5c], eax
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
mov eax, dword [ebp - 0x40]
sub eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x6c]
jne 0x4ed42e
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
mov eax, dword [ebp - 0x60]
add eax, dword [ebp - 0x70]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x4c]
imul dword [ebp - 0x44]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x18]
dec eax
test eax, eax
jl 0x4ee119
inc eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x14], 0
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x20]
add eax, dword [ebp - 4]
mov edx, dword [ebp - 0x14]
mov eax, dword [eax + edx*4]
add eax, dword [ebp - 4]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
xor eax, eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 1
jge 0x4ed4cc
inc dword [ebp - 0x74]
mov eax, dword [ebp - 0x60]
sub eax, dword [ebp - 0x78]
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x6c]
sub eax, 0x23
mov dword [ebp - 0x50], eax
mov eax, 0x6f
sub eax, dword [ebp - 0x58]
mov dword [ebp - 0x80], eax
imul eax, dword [ebp - 0x48], 0xe4
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
cmp dword [ebp - 0x74], 1
jl 0x4ed488
mov eax, dword [ebp - 0x70]
sub eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x64]
sub edx, dword [ebp - 0x44]
cmp eax, edx
jle 0x4ed524
lea eax, [ebp - 0x2c]
mov edx, 0x4ee33c
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
mov edx, 0x4ee364
call fcn.0040a1dc
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
jmp 0x4ed56c
lea eax, [ebp - 0x30]
mov edx, 0x4ee3a0
call fcn.0040a1dc
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, 0x4ee3cc
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, 0x4ee460
call fcn.0040a1dc
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
push eax
mov ecx, 1
mov edx, 1
mov eax, dword [ebp - 0x30]
call fcn.0040b018
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
mov ecx, 1
mov edx, dword [0x6f1ca0]
mov eax, 0x4ee488
call fcn.0040b170
cmp eax, 0x43
je 0x4ed607
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 0x2c]
call fcn.0040b018
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
push eax
mov ecx, 3
mov edx, 1
mov eax, dword [ebp - 0x38]
call fcn.0040b018
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
push eax
mov ecx, 3
mov edx, 1
mov eax, dword [ebp - 0x38]
call fcn.0040b018
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x24]
add eax, dword [ebp - 4]
mov edx, dword [ebp - 0x14]
movzx eax, word [eax + edx*2]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x58]
add eax, 0xc4
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x60]
sub eax, 0x15
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x2c]
push eax
mov ecx, 3
mov edx, 1
mov eax, dword [ebp - 0x38]
call fcn.0040b018
mov eax, dword [ebp - 0x70]
sub eax, dword [ebp - 0x60]
cmp eax, dword [ebp - 0x70]
jge 0x4ed693
imul eax, dword [ebp - 0x84], 0xdf
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x44]
imul dword [ebp - 0x80]
mov dword [ebp - 0x3c], eax
mov eax, 0xe8
sub eax, dword [ebp - 0x70]
mov dword [ebp - 0x6c], eax
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
jmp 0x4ed6d7
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
lea eax, [ebp - 0x34]
mov edx, 0x4ee4b0
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
mov edx, 0x4ee4fc
call fcn.0040a1dc
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x1c]
add eax, dword [ebp - 4]
mov edx, dword [ebp - 0x1c]
mov eax, dword [eax + edx*4]
add eax, dword [ebp - 4]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x6c]
sub eax, 0xd9
mov dword [ebp - 0x5c], eax
lea eax, [ebp - 0x2c]
push eax
mov ecx, 2
mov edx, 1
mov eax, dword [ebp - 0x34]
call fcn.0040b018
xor eax, eax
mov dword [ebp - 0x7c], eax
imul eax, dword [ebp - 0x58], 0xf0
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x68]
add eax, dword [ebp - 0x44]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x60]
add eax, dword [ebp - 0x70]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x48]
sub eax, dword [ebp - 0x84]
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x38]
mov edx, 0x4ee524
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
inc dword [ebp - 0x7c]
cmp dword [ebp - 0x7c], 0x10
jne 0x4ed72a
xor eax, eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0xa
jge 0x4ed7e9
inc dword [ebp - 0x50]
lea eax, [ebp - 0x2c]
push eax
mov ecx, 1
mov edx, 1
mov eax, dword [ebp - 0x30]
call fcn.0040b018
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x34]
push eax
mov ecx, 1
mov edx, 1
mov eax, dword [ebp - 0x30]
call fcn.0040b018
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 0x2c]
call fcn.0040b018
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
jmp 0x4ed7e9
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
mov edx, 0x4ee550
call fcn.0040a1dc
mov eax, dword [ebp - 0x20]
cmp byte [eax], 0xcc
je 0x4ed817
mov eax, dword [ebp - 0x20]
cmp word [eax], 0x3cd
jne 0x4edf39
lea eax, [ebp - 0xbc]
push eax
mov eax, dword [ebp - 0x18]
call fcn.0040a284
push eax
lea eax, [ebp - 0xc0]
mov edx, dword [ebp - 0x18]
mov ecx, 0
call fcn.0040a4e4
mov eax, dword [ebp - 0xc0]
mov edx, 1
pop ecx
call fcn.0040a7e4
mov edx, dword [ebp - 0xbc]
lea eax, [ebp - 0x28]
call fcn.0040ad14
mov eax, dword [ebp - 0x70]
sub eax, dword [ebp - 0x44]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x60]
sub eax, dword [ebp - 0x68]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x6c]
add eax, dword [ebp - 0x68]
cmp eax, dword [ebp - 0x68]
jne 0x4ed8b9
mov eax, dword [ebp - 0x5c]
sub eax, 0xb1
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x40]
add eax, dword [ebp - 0x74]
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x58]
add eax, dword [ebp - 0x3c]
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
mov eax, 0x26
sub eax, dword [ebp - 0x6c]
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
jmp 0x4ed901
lea eax, [ebp - 0x2c]
mov edx, 0x4ee57c
call fcn.0040a1dc
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
lea eax, [ebp - 0x34]
mov edx, 0x4ee5a4
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, 0x4ee5cc
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
mov eax, dword [ebp - 0x38]
mov edx, dword [ebp - 0x2c]
call fcn.0040afe0
jne 0x4ed96d
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
push eax
mov ecx, 3
mov edx, 1
mov eax, dword [ebp - 0x38]
call fcn.0040b018
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 0x2c]
call fcn.0040b018
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 0x2c]
call fcn.0040b018
jmp 0x4ed9b5
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, 0x4ee5fc
call fcn.0040a1dc
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
lea eax, [ebp - 0x34]
mov edx, 0x4ee620
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, 0x4ee648
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0xc4]
push eax
mov ecx, 3
mov edx, 1
mov eax, dword [ebp - 0x28]
call fcn.0040b018
mov eax, dword [ebp - 0xc4]
push eax
lea eax, [ebp - 0xd0]
mov edx, dword [0x6f5d20]
mov dx, word [edx]
call fcn.0040ac7c
mov eax, dword [ebp - 0xd0]
lea edx, [ebp - 0xcc]
call fcn.0041ff78
push dword [ebp - 0xcc]
lea eax, [ebp - 0xd4]
mov edx, dword [0x6f5bf0]
mov dx, word [edx]
call fcn.0040ac7c
push dword [ebp - 0xd4]
lea eax, [ebp - 0xd8]
mov edx, dword [0x6f5abc]
mov dx, word [edx]
call fcn.0040ac7c
push dword [ebp - 0xd8]
lea eax, [ebp - 0xc8]
mov edx, 3
call fcn.0040af30
mov edx, dword [ebp - 0xc8]
pop eax
call fcn.0040afe0
je 0x4ede47
lea eax, [ebp - 0xe4]
mov edx, dword [0x6f5bf0]
mov dx, word [edx]
call fcn.0040ac7c
mov eax, dword [ebp - 0xe4]
lea edx, [ebp - 0xe0]
call fcn.0041ff78
push dword [ebp - 0xe0]
lea eax, [ebp - 0xe8]
mov edx, dword [0x6f5a44]
mov dx, word [edx]
call fcn.0040ac7c
push dword [ebp - 0xe8]
lea eax, [ebp - 0xec]
mov edx, dword [0x6f59f0]
mov dx, word [edx]
call fcn.0040ac7c
push dword [ebp - 0xec]
lea eax, [ebp - 0xf0]
mov edx, dword [0x6f5c14]
mov dx, word [edx]
call fcn.0040ac7c
push dword [ebp - 0xf0]
lea eax, [ebp - 0xf4]
mov edx, dword [0x6f5da4]
mov dx, word [edx]
call fcn.0040ac7c
push dword [ebp - 0xf4]
lea eax, [ebp - 0xdc]
mov edx, 5
call fcn.0040af30
mov eax, dword [ebp - 0xdc]
mov ecx, 1
mov edx, dword [ebp - 0x28]
call fcn.0040b170
test eax, eax
jne 0x4ede47
mov eax, dword [ebp - 0x48]
imul dword [ebp - 0x60]
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x2c]
mov edx, 0x4ee674
call fcn.0040a1dc
xor eax, eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 8
jge 0x4edb9f
inc dword [ebp - 0x74]
mov eax, 0xb7
sub eax, dword [ebp - 0x4c]
mov dword [ebp - 0x84], eax
mov eax, 0xb3
sub eax, dword [ebp - 0x58]
mov dword [ebp - 0x44], eax
mov eax, 0x2f
sub eax, dword [ebp - 0x6c]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x68]
sub eax, 0x6a
mov dword [ebp - 0x5c], eax
lea eax, [ebp - 0x38]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 0x2c]
call fcn.0040b018
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
cmp dword [ebp - 0x74], 8
jl 0x4edb4b
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, 0x4ee6c8
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
mov eax, dword [ebp - 0x7c]
add eax, dword [ebp - 0x78]
mov dword [ebp - 0x64], eax
mov eax, 0x9e
sub eax, dword [ebp - 0x68]
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x2c]
push eax
mov ecx, 2
mov edx, 1
mov eax, dword [ebp - 0x34]
call fcn.0040b018
xor eax, eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 9
jge 0x4edc50
inc dword [ebp - 0x74]
mov eax, dword [ebp - 0x5c]
imul dword [ebp - 0x40]
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x58]
add eax, 0x65
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x70]
mov edx, eax
shl eax, 4
sub eax, edx
mov dword [ebp - 0x6c], eax
lea eax, [ebp - 0x38]
mov edx, 0x4ee700
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
push eax
mov ecx, 3
mov edx, 1
mov eax, dword [ebp - 0x38]
call fcn.0040b018
cmp dword [ebp - 0x74], 9
jl 0x4edbf7
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 0x2c]
call fcn.0040b018
mov dword [ebp - 8], 0x4130
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
xor eax, eax
mov dword [ebp - 0x78], eax
imul eax, dword [ebp - 0x6c], 0xed
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x84]
sub eax, 0x86
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x48]
sub eax, 0xc9
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x5c]
sub eax, dword [ebp - 0x7c]
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
inc dword [ebp - 0x78]
cmp dword [ebp - 0x78], 6
jne 0x4edc85
mov eax, dword [ebp - 0x6c]
cmp eax, dword [ebp - 0x50]
jle 0x4edd32
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
push eax
mov ecx, 1
mov edx, 1
mov eax, dword [ebp - 0x30]
call fcn.0040b018
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x34]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 0x2c]
call fcn.0040b018
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 0x2c]
call fcn.0040b018
jmp 0x4edd7a
lea eax, [ebp - 0x30]
mov edx, 0x4ee728
call fcn.0040a1dc
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, 0x4ee764
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
mov edx, 0x4ee78c
call fcn.0040a1dc
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
mov eax, dword [ebp - 0x78]
add eax, dword [ebp - 0x70]
cmp eax, dword [ebp - 0x70]
jne 0x4eddda
lea eax, [ebp - 0x38]
mov edx, 0x4ee7b4
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
mov edx, 0x4ee7d0
call fcn.0040a1dc
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, 0x4ee824
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
jmp 0x4ede37
lea eax, [ebp - 0x30]
push eax
mov ecx, 3
mov edx, 1
mov eax, dword [ebp - 0x38]
call fcn.0040b018
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 0x2c]
call fcn.0040b018
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 0x2c]
call fcn.0040b018
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
jmp 0x4ee119
mov eax, dword [0x6f1ca0]
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0
je 0x4ede6c
mov eax, dword [ebp - 0x90]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0xd7
jne 0x4edeb5
mov eax, dword [ebp - 0x74]
add eax, 0x3d
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x80]
imul dword [ebp - 0x50]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x84]
add eax, 0x82
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x48]
sub eax, 0x38
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x5c]
sub eax, dword [ebp - 0x78]
mov dword [ebp - 0x7c], eax
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
xor eax, eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0xd
jge 0x4edf0b
inc dword [ebp - 0x3c]
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
cmp dword [ebp - 0x3c], 0xd
jl 0x4edec0
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, 0x4ee848
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
xor eax, eax
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x64]
sub eax, dword [ebp - 0x4c]
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x3c]
mov edx, eax
shl eax, 5
add eax, edx
mov dword [ebp - 0x6c], eax
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
mov eax, dword [ebp - 0x78]
imul dword [ebp - 0x58]
mov dword [ebp - 0x50], eax
jmp 0x4edf8d
xor eax, eax
mov dword [ebp - 0x44], eax
lea eax, [ebp - 0x2c]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 0x2c]
call fcn.0040b018
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x34]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 0x2c]
call fcn.0040b018
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
push eax
mov ecx, 1
mov edx, 1
mov eax, dword [ebp - 0x30]
call fcn.0040b018
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
inc dword [ebp - 0x44]
cmp dword [ebp - 0x44], 7
jne 0x4edf92
mov eax, dword [ebp - 0x84]
sub eax, dword [ebp - 0x80]
mov edx, dword [ebp - 0x68]
sub edx, dword [ebp - 0x80]
cmp eax, edx
jle 0x4ee05c
lea eax, [ebp - 0x2c]
mov edx, 0x4ee86c
call fcn.0040a1dc
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
push eax
mov ecx, 2
mov edx, 1
mov eax, dword [ebp - 0x34]
call fcn.0040b018
jmp 0x4ee0a4
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, 0x4ee890
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
mov edx, 0x4ee8e0
call fcn.0040a1dc
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, 0x4ee908
call fcn.0040a1dc
mov eax, dword [ebp - 0x64]
sub eax, dword [ebp - 0x84]
cmp eax, dword [ebp - 0x68]
jne 0x4ee0ff
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
push eax
mov ecx, 2
mov edx, 1
mov eax, dword [ebp - 0x34]
call fcn.0040b018
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
inc dword [ebp - 0x14]
dec dword [ebp - 0x88]
jne 0x4ed45d
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
mov eax, dword [0x6f1ca0]
mov dword [ebp - 0x94], eax
cmp dword [ebp - 0x94], 0
je 0x4ee149
mov eax, dword [ebp - 0x94]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x94], eax
cmp dword [ebp - 0x94], 0xc0
jne 0x4ee174
imul eax, dword [ebp - 0x70], 0x8f
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x6c]
add eax, 0x21
mov dword [ebp - 0x68], eax
imul eax, dword [ebp - 0x44], 0xaf
mov dword [ebp - 0x50], eax
jmp 0x4ee18a
mov eax, dword [ebp - 0x80]
sub eax, dword [ebp - 0x7c]
mov dword [ebp - 0x58], eax
lea eax, [ebp - 0x2c]
mov edx, 0x4ee92c
call fcn.0040a1dc
mov eax, dword [ebp - 0x64]
add eax, 0x82
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x6c]
sub eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x74]
sub edx, dword [ebp - 0x3c]
cmp eax, edx
jle 0x4ee1ba
lea eax, [ebp - 0x2c]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 0x2c]
call fcn.0040b018
jmp 0x4ee219
xor eax, eax
mov dword [ebp - 0x74], eax
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
call fcn.0040a1dc
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x38]
call fcn.0040a1dc
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, 0x4ee970
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
inc dword [ebp - 0x74]
cmp dword [ebp - 0x74], 7
jne 0x4ee1bf
lea eax, [ebp - 0x38]
mov edx, 0x4ee9b4
call fcn.0040a1dc
mov ecx, 1
mov edx, dword [0x6f1ca0]
mov eax, 0x4eea0c
call fcn.0040b170
cmp eax, 0xb0
je 0x4ee242
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
jmp 0x4ee24d
lea eax, [ebp - 0x30]
mov edx, dword [ebp - 0x34]
call fcn.0040a1dc
lea eax, [ebp - 0x38]
mov edx, dword [ebp - 0x2c]
call fcn.0040a1dc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4ee29a
lea eax, [ebp - 0xf4]
mov edx, 0xd
call fcn.00409e14
lea eax, [ebp - 0xc0]
mov edx, 0xb
call fcn.00409e44
lea eax, [ebp - 0x38]
mov edx, 5
call fcn.00409e14
ret