Function at 0x4a50f0
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push 0x403926
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xfc
push ebx
push esi
push edi
mov dword [ebp - 8], esp
mov dword [ebp - 4], 0x402e48
movsx eax, word [ebp + 8]
mov ecx, dword [0x4d109c]
xor esi, esi
or eax, ecx
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x44], esi
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x74], esi
mov dword [ebp - 0x94], esi
mov dword [ebp - 0xa4], esi
je 0x4a61f7
mov ecx, dword [0x4d11bc]
mov ebx, dword [fcn.004010cc]
push ecx
lea edx, [ebp - 0x30]
push edx
call ebx
push eax
lea eax, [ebp - 0x20]
push eax
push 0x42721c
call fcn.004c5320
mov edi, dword [fcn.004012f8]
lea ecx, [ebp - 0x30]
call edi
mov ecx, dword [0x4d11bc]
push ecx
lea edx, [ebp - 0x30]
push edx
call ebx
push eax
lea eax, [ebp - 0x14]
push eax
push 0x4272a8
call fcn.004c5320
lea ecx, [ebp - 0x30]
call edi
mov edx, dword [ebp - 0x14]
lea ecx, [ebp - 0x14]
push edx
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x74], 0x4008
call dword [fcn.00401034]
xor ebx, ebx
test eax, eax
lea eax, [ebp - 0x74]
push eax
setle bl
call dword [0x401148]
xor ecx, ecx
cmp ax, 0xffff
setne cl
or ebx, ecx
jne 0x4a5487
mov eax, dword [0x4d13e8]
cmp eax, esi
mov dword [ebp - 0x6c], 4
mov dword [ebp - 0x74], 3
jne 0x4a5210
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [ebp - 0x74]
sub esp, 0x10
mov edx, esp
mov dword [edx], ecx
mov ecx, dword [ebp - 0x70]
mov dword [edx + 4], ecx
mov ecx, dword [ebp - 0x6c]
mov dword [edx + 8], ecx
mov ecx, dword [ebp - 0x68]
push 6
mov dword [edx + 0xc], ecx
mov edx, dword [eax]
push eax
call dword [edx + 0x2fc]
mov esi, dword [fcn.004010c0]
push eax
lea eax, [ebp - 0x30]
push eax
call esi
push eax
call dword [fcn.004012dc]
lea ecx, [ebp - 0x30]
call edi
mov eax, dword [0x4d13e8]
test eax, eax
jne 0x4a526e
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
push 0
lea ecx, [ebp - 0x14]
push 0x1b
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x74], 0x4008
mov edx, dword [eax]
push eax
call dword [edx + 0x2fc]
push eax
lea eax, [ebp - 0x30]
push eax
call esi
push eax
lea ecx, [ebp - 0x44]
push ecx
call dword [fcn.00401170]
add esp, 0x10
push eax
call dword [0x4010e4]
lea edx, [ebp - 0x74]
xor ebx, ebx
push edx
mov bx, ax
call dword [0x401148]
lea ecx, [ebp - 0x30]
and ebx, eax
call edi
lea ecx, [ebp - 0x44]
call dword [fcn.0040102c]
test bx, bx
je 0x4a548d
mov eax, dword [0x4d13e8]
test eax, eax
jne 0x4a52ea
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [eax]
push 0
push 7
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
mov ebx, dword [fcn.00401170]
push eax
lea eax, [ebp - 0x44]
push eax
call ebx
mov eax, dword [0x4d13e8]
add esp, 0x10
test eax, eax
jne 0x4a532c
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [eax]
push 0
push 8
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x34]
push edx
call esi
push eax
lea eax, [ebp - 0x54]
push eax
call ebx
mov ecx, dword [ebp - 0x14]
add esp, 0x10
push ecx
call dword [0x401300]
call dword [0x4010f0]
fstp qword [ebp - 0xc4]
lea edx, [ebp - 0x44]
push edx
call dword [fcn.00401270]
mov dword [ebp - 0xc8], eax
fild dword [ebp - 0xc8]
fstp qword [ebp - 0xd0]
fld qword [ebp - 0xc4]
fcomp qword [ebp - 0xd0]
fnstsw ax
test ah, 1
jne 0x4a5396
mov ebx, 1
jmp 0x4a5398
xor ebx, ebx
mov eax, dword [ebp - 0x14]
push eax
call dword [0x401300]
call dword [0x4010f0]
fstp qword [ebp - 0xd8]
lea ecx, [ebp - 0x54]
push ecx
call dword [fcn.00401270]
mov dword [ebp - 0xdc], eax
fild dword [ebp - 0xdc]
fstp qword [ebp - 0xe4]
fld qword [ebp - 0xd8]
fcomp qword [ebp - 0xe4]
fnstsw ax
test ah, 0x41
je 0x4a53e4
mov eax, 1
jmp 0x4a53e6
xor eax, eax
neg eax
neg ebx
and eax, ebx
lea edx, [ebp - 0x34]
mov ebx, eax
push edx
lea eax, [ebp - 0x30]
push eax
push 2
call dword [fcn.00401054]
lea ecx, [ebp - 0x54]
push ecx
lea edx, [ebp - 0x44]
push edx
push 2
call dword [fcn.00401040]
add esp, 0x18
test bx, bx
je 0x4a548d
mov eax, dword [ebp - 0x14]
push eax
call dword [0x4011cc]
movsx ecx, ax
mov eax, dword [0x4d13e8]
test eax, eax
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x74], 3
jne 0x4a544b
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [ebp - 0x74]
sub esp, 0x10
mov edx, esp
mov dword [edx], ecx
mov ecx, dword [ebp - 0x70]
mov dword [edx + 4], ecx
mov ecx, dword [ebp - 0x6c]
mov dword [edx + 8], ecx
mov ecx, dword [ebp - 0x68]
push 9
mov dword [edx + 0xc], ecx
mov edx, dword [eax]
push eax
call dword [edx + 0x2fc]
push eax
lea eax, [ebp - 0x30]
push eax
call esi
push eax
call dword [fcn.004012dc]
lea ecx, [ebp - 0x30]
call edi
jmp 0x4a548d
mov esi, dword [fcn.004010c0]
mov edx, dword [ebp - 0x20]
lea ecx, [ebp - 0x20]
push edx
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x74], 0x4008
call dword [fcn.00401034]
xor ebx, ebx
test eax, eax
lea eax, [ebp - 0x74]
push eax
setle bl
call dword [0x401148]
xor ecx, ecx
cmp ax, 0xffff
setne cl
or ebx, ecx
jne 0x4a575e
mov eax, 3
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x74], eax
mov eax, dword [0x4d13e8]
test eax, eax
jne 0x4a54ef
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [ebp - 0x74]
sub esp, 0x10
mov edx, esp
mov dword [edx], ecx
mov ecx, dword [ebp - 0x70]
mov dword [edx + 4], ecx
mov ecx, dword [ebp - 0x6c]
mov dword [edx + 8], ecx
mov ecx, dword [ebp - 0x68]
push 6
mov dword [edx + 0xc], ecx
mov edx, dword [eax]
push eax
call dword [edx + 0x2fc]
push eax
lea eax, [ebp - 0x30]
push eax
call esi
push eax
call dword [fcn.004012dc]
lea ecx, [ebp - 0x30]
call edi
mov eax, dword [0x4d13e8]
test eax, eax
jne 0x4a5547
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
push 0
lea ecx, [ebp - 0x20]
push 0x1b
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x74], 0x4008
mov edx, dword [eax]
push eax
call dword [edx + 0x2fc]
push eax
lea eax, [ebp - 0x30]
push eax
call esi
push eax
lea ecx, [ebp - 0x44]
push ecx
call dword [fcn.00401170]
add esp, 0x10
push eax
call dword [0x4010e4]
lea edx, [ebp - 0x74]
xor ebx, ebx
push edx
mov bx, ax
call dword [0x401148]
lea ecx, [ebp - 0x30]
and ebx, eax
call edi
lea ecx, [ebp - 0x44]
call dword [fcn.0040102c]
test bx, bx
je 0x4a575e
mov eax, dword [0x4d13e8]
test eax, eax
jne 0x4a55c3
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [eax]
push 0
push 7
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
mov ebx, dword [fcn.00401170]
push eax
lea eax, [ebp - 0x44]
push eax
call ebx
mov eax, dword [0x4d13e8]
add esp, 0x10
test eax, eax
jne 0x4a5605
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [eax]
push 0
push 8
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x34]
push edx
call esi
push eax
lea eax, [ebp - 0x54]
push eax
call ebx
mov ecx, dword [ebp - 0x14]
add esp, 0x10
push ecx
call dword [0x401300]
call dword [0x4010f0]
fstp qword [ebp - 0xec]
lea edx, [ebp - 0x44]
push edx
call dword [fcn.00401270]
mov dword [ebp - 0xf0], eax
fild dword [ebp - 0xf0]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xec]
fcomp qword [ebp - 0xf8]
fnstsw ax
test ah, 1
jne 0x4a566f
mov ebx, 1
jmp 0x4a5671
xor ebx, ebx
mov eax, dword [ebp - 0x14]
push eax
call dword [0x401300]
call dword [0x4010f0]
fstp qword [ebp - 0x100]
lea ecx, [ebp - 0x54]
push ecx
call dword [fcn.00401270]
mov dword [ebp - 0x104], eax
fild dword [ebp - 0x104]
fstp qword [ebp - 0x10c]
fld qword [ebp - 0x100]
fcomp qword [ebp - 0x10c]
fnstsw ax
test ah, 0x41
je 0x4a56bd
mov eax, 1
jmp 0x4a56bf
xor eax, eax
neg eax
neg ebx
and eax, ebx
lea edx, [ebp - 0x34]
mov ebx, eax
push edx
lea eax, [ebp - 0x30]
push eax
push 2
call dword [fcn.00401054]
lea ecx, [ebp - 0x54]
push ecx
lea edx, [ebp - 0x44]
push edx
push 2
call dword [fcn.00401040]
add esp, 0x18
test bx, bx
je 0x4a575e
mov eax, dword [ebp - 0x20]
push eax
call dword [0x4011cc]
movsx ecx, ax
mov eax, dword [0x4d13e8]
test eax, eax
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x74], 3
jne 0x4a5724
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [ebp - 0x74]
sub esp, 0x10
mov edx, esp
mov dword [edx], ecx
mov ecx, dword [ebp - 0x70]
mov dword [edx + 4], ecx
mov ecx, dword [ebp - 0x6c]
mov dword [edx + 8], ecx
mov ecx, dword [ebp - 0x68]
push 9
mov dword [edx + 0xc], ecx
mov edx, dword [eax]
push eax
call dword [edx + 0x2fc]
push eax
lea eax, [ebp - 0x30]
push eax
call esi
push eax
call dword [fcn.004012dc]
lea ecx, [ebp - 0x30]
call edi
cmp dword [0x4d109c], 1
jne 0x4a61f7
mov eax, dword [0x4d13e8]
xor ebx, ebx
cmp eax, ebx
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x74], 2
jne 0x4a5795
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov edx, dword [ebp - 0x74]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [ebp - 0x70]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0x6c]
mov dword [ecx + 8], edx
mov edx, dword [ebp - 0x68]
mov dword [ecx + 0xc], edx
sub esp, 0x10
mov edx, esp
mov ecx, 2
mov dword [edx], ecx
mov ecx, dword [ebp - 0x90]
mov dword [edx + 4], ecx
mov ecx, dword [ebp - 0x88]
push 2
mov dword [edx + 8], ebx
push 0x6d
mov dword [edx + 0xc], ecx
mov edx, dword [eax]
push eax
call dword [edx + 0x2fc]
push eax
lea eax, [ebp - 0x30]
push eax
call esi
push eax
call dword [fcn.00401038]
add esp, 0x2c
lea ecx, [ebp - 0x30]
call edi
mov eax, dword [0x4d13e8]
test eax, eax
mov dword [ebp - 0x6c], 4
mov dword [ebp - 0x74], 3
jne 0x4a5821
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov edx, dword [ebp - 0x74]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [ebp - 0x70]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0x6c]
mov dword [ecx + 8], edx
mov edx, dword [ebp - 0x68]
push 6
mov dword [ecx + 0xc], edx
mov ecx, dword [eax]
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
call dword [fcn.004012dc]
lea ecx, [ebp - 0x30]
call edi
mov eax, dword [0x4d13e8]
test eax, eax
jne 0x4a5879
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [eax]
push 0
push 0x1b
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
lea eax, [ebp - 0x44]
push eax
call dword [fcn.00401170]
add esp, 0x10
push eax
call dword [0x4010e4]
lea ecx, [ebp - 0x30]
mov ebx, eax
call edi
lea ecx, [ebp - 0x44]
call dword [fcn.0040102c]
test bx, bx
je 0x4a5984
mov eax, dword [0x4d13e8]
test eax, eax
jne 0x4a58d9
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [eax]
push 0
push 9
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
lea eax, [ebp - 0x44]
push eax
call dword [fcn.00401170]
add esp, 0x10
push eax
call dword [fcn.00401270]
lea ecx, [ebp - 0x30]
mov ebx, eax
call edi
lea ecx, [ebp - 0x44]
call dword [fcn.0040102c]
mov ecx, dword [0x4d11bc]
push 0xffffffffffffffff
push ecx
lea edx, [ebp - 0x30]
push edx
call dword [fcn.004010cc]
push eax
push 0x41329c
push ebx
call dword [fcn.00401020]
mov ebx, dword [fcn.004012c8]
mov edx, eax
lea ecx, [ebp - 0x24]
call ebx
push eax
call dword [fcn.0040106c]
mov edx, eax
lea ecx, [ebp - 0x28]
call ebx
push eax
push 0x427330
call dword [fcn.0040106c]
mov edx, eax
lea ecx, [ebp - 0x2c]
call ebx
push eax
call fcn.004c5b50
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x28]
push ecx
lea edx, [ebp - 0x24]
push edx
push 3
call dword [fcn.00401250]
add esp, 0x10
lea ecx, [ebp - 0x30]
call edi
jmp 0x4a598a
mov ebx, dword [fcn.004012c8]
mov eax, 3
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x74], eax
mov eax, dword [0x4d13e8]
test eax, eax
jne 0x4a59b3
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov edx, dword [ebp - 0x74]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [ebp - 0x70]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0x6c]
mov dword [ecx + 8], edx
mov edx, dword [ebp - 0x68]
push 6
mov dword [ecx + 0xc], edx
mov ecx, dword [eax]
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
call dword [fcn.004012dc]
lea ecx, [ebp - 0x30]
call edi
mov eax, dword [0x4d13e8]
test eax, eax
jne 0x4a5a0b
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [eax]
push 0
push 0x1b
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
lea eax, [ebp - 0x44]
push eax
call dword [fcn.00401170]
add esp, 0x10
push eax
call dword [0x4010e4]
lea ecx, [ebp - 0x30]
mov dword [ebp - 0xb8], eax
call edi
lea ecx, [ebp - 0x44]
call dword [fcn.0040102c]
cmp word [ebp - 0xb8], 0
je 0x4a5b1b
mov eax, dword [0x4d13e8]
test eax, eax
jne 0x4a5a74
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [eax]
push 0
push 9
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
lea eax, [ebp - 0x44]
push eax
call dword [fcn.00401170]
add esp, 0x10
push eax
call dword [fcn.00401270]
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x1c], eax
call edi
lea ecx, [ebp - 0x44]
call dword [fcn.0040102c]
mov ecx, dword [0x4d11bc]
push 0xffffffffffffffff
push ecx
lea edx, [ebp - 0x30]
push edx
call dword [fcn.004010cc]
push eax
mov eax, dword [ebp - 0x1c]
push 0x41329c
push eax
call dword [fcn.00401020]
mov edx, eax
lea ecx, [ebp - 0x24]
call ebx
push eax
call dword [fcn.0040106c]
mov edx, eax
lea ecx, [ebp - 0x28]
call ebx
push eax
push 0x427378
call dword [fcn.0040106c]
mov edx, eax
lea ecx, [ebp - 0x2c]
call ebx
push eax
call fcn.004c5b50
lea ecx, [ebp - 0x2c]
push ecx
lea edx, [ebp - 0x28]
push edx
lea eax, [ebp - 0x24]
push eax
push 3
call dword [fcn.00401250]
add esp, 0x10
lea ecx, [ebp - 0x30]
call edi
mov eax, dword [0x4d13e8]
test eax, eax
mov dword [0x4d109c], 2
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x74], 3
jne 0x4a5b51
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov edx, dword [ebp - 0x74]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [ebp - 0x70]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0x6c]
mov dword [ecx + 8], edx
mov edx, dword [ebp - 0x68]
push 6
mov dword [ecx + 0xc], edx
mov ecx, dword [eax]
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
call dword [fcn.004012dc]
lea ecx, [ebp - 0x30]
call edi
mov eax, dword [0x4d13e8]
test eax, eax
jne 0x4a5ba9
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [eax]
push 0
push 0x1b
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
lea eax, [ebp - 0x44]
push eax
call dword [fcn.00401170]
add esp, 0x10
push eax
call dword [0x4010e4]
lea ecx, [ebp - 0x30]
mov ebx, eax
call edi
lea ecx, [ebp - 0x44]
call dword [fcn.0040102c]
test bx, bx
je 0x4a5c4d
mov eax, dword [0x4d13e8]
test eax, eax
mov dword [ebp - 0x6c], 0x4d1098
mov dword [ebp - 0x74], 0x4003
jne 0x4a5c13
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov edx, dword [ebp - 0x74]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [ebp - 0x70]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0x6c]
mov dword [ecx + 8], edx
mov edx, dword [ebp - 0x68]
push 9
mov dword [ecx + 0xc], edx
mov ecx, dword [eax]
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
call dword [fcn.004012dc]
lea ecx, [ebp - 0x30]
call edi
mov eax, dword [0x4d13e8]
test eax, eax
mov dword [ebp - 0x6c], 1
mov dword [ebp - 0x74], 3
jne 0x4a5c79
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov edx, dword [ebp - 0x74]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [ebp - 0x70]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0x6c]
mov dword [ecx + 8], edx
mov edx, dword [ebp - 0x68]
push 6
mov dword [ecx + 0xc], edx
mov ecx, dword [eax]
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
call dword [fcn.004012dc]
lea ecx, [ebp - 0x30]
call edi
mov eax, dword [0x4d13e8]
test eax, eax
jne 0x4a5cd1
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [eax]
push 0
push 0x1b
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
lea eax, [ebp - 0x44]
push eax
call dword [fcn.00401170]
add esp, 0x10
push eax
call dword [0x4010e4]
lea ecx, [ebp - 0x30]
mov ebx, eax
call edi
lea ecx, [ebp - 0x44]
call dword [fcn.0040102c]
test bx, bx
je 0x4a5d75
mov eax, dword [0x4d13e8]
test eax, eax
mov dword [ebp - 0x6c], 0x4d1098
mov dword [ebp - 0x74], 0x4003
jne 0x4a5d3b
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov edx, dword [ebp - 0x74]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [ebp - 0x70]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0x6c]
mov dword [ecx + 8], edx
mov edx, dword [ebp - 0x68]
push 9
mov dword [ecx + 0xc], edx
mov ecx, dword [eax]
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
call dword [fcn.004012dc]
lea ecx, [ebp - 0x30]
call edi
mov eax, dword [0x4d13e8]
test eax, eax
mov dword [ebp - 0x6c], 0xe
mov dword [ebp - 0x74], 3
jne 0x4a5da1
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov edx, dword [ebp - 0x74]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [ebp - 0x70]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0x6c]
mov dword [ecx + 8], edx
mov edx, dword [ebp - 0x68]
push 6
mov dword [ecx + 0xc], edx
mov ecx, dword [eax]
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
call dword [fcn.004012dc]
lea ecx, [ebp - 0x30]
call edi
mov eax, dword [0x4d13e8]
test eax, eax
jne 0x4a5df9
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [eax]
push 0
push 0x1b
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
lea eax, [ebp - 0x44]
push eax
call dword [fcn.00401170]
add esp, 0x10
push eax
call dword [0x4010e4]
lea ecx, [ebp - 0x30]
mov ebx, eax
call edi
lea ecx, [ebp - 0x44]
call dword [fcn.0040102c]
test bx, bx
je 0x4a5ec3
cmp dword [0x4d10dc], 0x18
jne 0x4a5e5a
mov eax, dword [0x4d13e8]
test eax, eax
mov ebx, 3
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x74], ebx
jne 0x4a5e87
jmp 0x4a5e72
mov eax, dword [0x4d13e8]
test eax, eax
mov ebx, 3
mov dword [ebp - 0x6c], 1
mov dword [ebp - 0x74], ebx
jne 0x4a5e87
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov edx, dword [ebp - 0x74]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [ebp - 0x70]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0x6c]
mov dword [ecx + 8], edx
mov edx, dword [ebp - 0x68]
push 9
mov dword [ecx + 0xc], edx
mov ecx, dword [eax]
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
call dword [fcn.004012dc]
lea ecx, [ebp - 0x30]
call edi
jmp 0x4a5ec8
mov ebx, 3
mov eax, dword [0x4d13e8]
test eax, eax
mov dword [ebp - 0x6c], 0xf
mov dword [ebp - 0x74], ebx
jne 0x4a5ef0
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov edx, dword [ebp - 0x74]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [ebp - 0x70]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0x6c]
mov dword [ecx + 8], edx
mov edx, dword [ebp - 0x68]
push 6
mov dword [ecx + 0xc], edx
mov ecx, dword [eax]
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
call dword [fcn.004012dc]
lea ecx, [ebp - 0x30]
call edi
mov eax, dword [0x4d13e8]
test eax, eax
jne 0x4a5f48
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [eax]
push 0
push 0x1b
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
lea eax, [ebp - 0x44]
push eax
call dword [fcn.00401170]
add esp, 0x10
push eax
call dword [0x4010e4]
lea ecx, [ebp - 0x30]
mov ebx, eax
call edi
lea ecx, [ebp - 0x44]
call dword [fcn.0040102c]
test bx, bx
je 0x4a6058
mov ebx, dword [0x4d10dc]
xor edx, edx
mov ecx, 1
cmp ebx, ecx
sete dl
mov eax, 2
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x44], eax
lea eax, [ebp - 0x54]
push eax
mov dword [ebp - 0x3c], ecx
neg edx
lea ecx, [ebp - 0x44]
mov word [ebp - 0x6c], dx
push ecx
lea edx, [ebp - 0x74]
push edx
lea eax, [ebp - 0x64]
push eax
mov dword [ebp - 0x4c], 8
mov dword [ebp - 0x74], 0xb
call dword [fcn.00401248]
lea ecx, [ebp - 0x64]
push ecx
call dword [fcn.00401270]
mov ebx, eax
mov eax, dword [0x4d13e8]
test eax, eax
jne 0x4a5ffe
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
sub esp, 0x10
mov edx, esp
mov ecx, 3
mov dword [edx], ecx
mov ecx, dword [ebp - 0xa0]
mov dword [edx + 4], ecx
mov ecx, dword [ebp - 0x98]
mov dword [edx + 8], ebx
push 9
mov dword [edx + 0xc], ecx
mov edx, dword [eax]
push eax
call dword [edx + 0x2fc]
push eax
lea eax, [ebp - 0x30]
push eax
call esi
push eax
call dword [fcn.004012dc]
lea ecx, [ebp - 0x30]
call edi
lea ecx, [ebp - 0x64]
push ecx
lea edx, [ebp - 0x54]
push edx
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x74]
push ecx
push 4
call dword [fcn.00401040]
add esp, 0x14
mov eax, dword [0x4d13e8]
test eax, eax
mov dword [ebp - 0x6c], 0xa
mov dword [ebp - 0x74], 3
jne 0x4a6084
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [ebp - 0x74]
sub esp, 0x10
mov edx, esp
mov dword [edx], ecx
mov ecx, dword [ebp - 0x70]
mov dword [edx + 4], ecx
mov ecx, dword [ebp - 0x6c]
mov dword [edx + 8], ecx
mov ecx, dword [ebp - 0x68]
push 6
mov dword [edx + 0xc], ecx
mov edx, dword [eax]
push eax
call dword [edx + 0x2fc]
push eax
lea eax, [ebp - 0x30]
push eax
call esi
push eax
call dword [fcn.004012dc]
lea ecx, [ebp - 0x30]
call edi
mov eax, dword [0x4d13e8]
test eax, eax
jne 0x4a60dc
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov ecx, dword [eax]
push 0
push 0x1b
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
lea eax, [ebp - 0x44]
push eax
call dword [fcn.00401170]
add esp, 0x10
push eax
call dword [0x4010e4]
lea ecx, [ebp - 0x30]
mov ebx, eax
call edi
lea ecx, [ebp - 0x44]
call dword [fcn.0040102c]
test bx, bx
je 0x4a61f7
mov edx, dword [0x4d1054]
xor ecx, ecx
cmp edx, 1
sete cl
mov eax, 2
lea edx, [ebp - 0x54]
push edx
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x44], eax
lea eax, [ebp - 0x44]
neg ecx
mov word [ebp - 0x6c], cx
push eax
lea ecx, [ebp - 0x74]
push ecx
lea edx, [ebp - 0x64]
push edx
mov dword [ebp - 0x4c], 3
mov dword [ebp - 0x3c], 4
mov dword [ebp - 0x74], 0xb
call dword [fcn.00401248]
lea eax, [ebp - 0x64]
push eax
call dword [fcn.00401270]
mov ebx, eax
mov eax, dword [0x4d13e8]
test eax, eax
mov dword [ebp - 0xa4], 3
jne 0x4a619c
push 0x4d13e8
push 0x4044e4
call dword [fcn.0040122c]
mov eax, dword [0x4d13e8]
mov edx, dword [ebp - 0xa4]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [ebp - 0xa0]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0x98]
mov dword [ecx + 8], ebx
push 9
mov dword [ecx + 0xc], edx
mov ecx, dword [eax]
push eax
call dword [ecx + 0x2fc]
push eax
lea edx, [ebp - 0x30]
push edx
call esi
push eax
call dword [fcn.004012dc]
lea ecx, [ebp - 0x30]
call edi
lea eax, [ebp - 0x64]
push eax
lea ecx, [ebp - 0x54]
push ecx
lea edx, [ebp - 0x44]
push edx
lea eax, [ebp - 0x74]
push eax
push 4
call dword [fcn.00401040]
add esp, 0x14
wait
push 0x4a624c
jmp 0x4a623b
mov esi, dword [fcn.004012f4]
lea ecx, [ebp - 0x14]
call esi
lea ecx, [ebp - 0x20]
call esi
ret