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

Disassembly:
push 0x1d
call dword [0x56d7e8]
call fcn.004c9330
mov eax, 0xffffffff
push 0
lea eax, [ebx + 0x48]
push eax
call dword [0x56db64]
push dword [0x56109c]
push 0
call dword [0x56da04]
test eax, eax
jne 0x4c79f1
jmp 0x4c7a0d
push dword [0x56109c]
call dword [0x56db7c]
push eax
lea eax, [ebx + 0x40]
push eax
call dword [0x56db64]
jmp 0x4c7a50
mov eax, dword [0x56e594]
lea edx, [ebx + 0x20]
mov ecx, 8
mov dword [edx], ecx
add edx, ecx
and dword [edx], 0
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x118]
test eax, eax
jl 0x4c7a70
lea ecx, [ebx + 0x20]
call dword [0x56de2c]
push eax
lea eax, [ebx + 0x40]
push eax
call dword [0x56db64]
lea ecx, [ebx + 0x20]
call dword [0x56e368]
mov eax, dword [0x56e594]
lea edx, [ebx + 0x20]
mov ecx, 8
mov dword [edx], ecx
add edx, ecx
and dword [edx], 0
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x11c]
test eax, eax
jl 0x4c92de
lea ecx, [ebx + 0x20]
call dword [0x56de2c]
push eax
lea eax, [ebx + 0x3c]
push eax
call dword [0x56db64]
lea ecx, [ebx + 0x20]
call dword [0x56e368]
mov dword [0x56b8a0], 0
mov dword [0x56b8a4], 0
mov byte [0x55e995], 0xff
mov eax, dword [ebp + 0x28]
push dword [eax]
push 0x54b280
call dword [0x56fc0c]
test eax, eax
je 0x4c7acb
jmp 0x4c7ae6
push dword [ebp + 0x28]
push dword [0x55d6b8]
mov eax, dword [ebp + 0x28]
push dword [eax]
call dword [0x56d9f8]
push eax
call dword [0x56db68]
mov eax, dword [ebp + 0x2c]
push dword [eax]
push 0
call dword [0x56da04]
neg eax
sbb eax, eax
push eax
mov eax, dword [ebp + 0x2c]
push dword [eax]
push 0x54b280
call dword [0x56fc0c]
neg eax
sbb eax, eax
not eax
pop edx
and eax, edx
test eax, eax
jne 0x4c7b1e
jmp 0x4c7b39
push dword [ebp + 0x2c]
push dword [0x55d6b8]
mov eax, dword [ebp + 0x2c]
push dword [eax]
call dword [0x56d9f8]
push eax
call dword [0x56db68]
push dword [ebp + 0x28]
mov eax, dword [ebp + 0x28]
push dword [eax]
call dword [0x56db84]
push eax
call dword [0x56db68]
push dword [ebp + 0x2c]
mov eax, dword [ebp + 0x2c]
push dword [eax]
call dword [0x56db84]
push eax
call dword [0x56db68]
mov eax, dword [ebp + 0x28]
push dword [eax]
lea eax, [ebx + 0x6c]
push eax
call dword [0x56db64]
mov eax, dword [ebp + 0x28]
push dword [eax]
push 0x54b280
call dword [0x56fc10]
mov word [ebx + 0x62], ax
push dword [ebp + 0x28]
mov eax, dword [ebp + 0x28]
push dword [eax]
movsx eax, word [ebx + 0x62]
inc eax
push eax
call dword [0x56db28]
push eax
call dword [0x56db68]
and word [ebx + 0x60], 0
push dword [ebp + 0x58]
mov eax, dword [ebp + 0x58]
push dword [eax]
push 0x2d
call dword [0x56db14]
push eax
call dword [0x56db68]
push dword [ebp + 0x5c]
mov eax, dword [ebp + 0x5c]
push dword [eax]
push 0x2d
call dword [0x56db14]
push eax
call dword [0x56db68]
push dword [ebp + 0x58]
mov eax, dword [ebp + 0x58]
push dword [eax]
call dword [0x56d8e0]
add eax, 0xffffffd3
neg eax
push eax
fild dword [esp]
pop ecx
fdiv dword [0x54ad2c]
push eax
fistp dword [esp]
call dword [0x56dac4]
push eax
mov eax, dword [ebp + 0x58]
push dword [eax]
call dword [0x56d9f8]
push eax
mov eax, dword [ebp + 0x58]
push dword [eax]
call dword [0x56d8e0]
add eax, 0xffffffd3
neg eax
push eax
fild dword [esp]
pop ecx
fdiv dword [0x54ad2c]
push eax
fistp dword [esp]
call dword [0x56dac4]
push eax
call dword [0x56d9f8]
push eax
call dword [0x56db68]
push dword [ebp + 0x5c]
mov eax, dword [ebp + 0x5c]
push dword [eax]
call dword [0x56d8e0]
add eax, 0xffffffd3
neg eax
push eax
fild dword [esp]
pop ecx
fdiv dword [0x54ad2c]
push eax
fistp dword [esp]
call dword [0x56dac4]
push eax
mov eax, dword [ebp + 0x5c]
push dword [eax]
call dword [0x56d9f8]
push eax
mov eax, dword [ebp + 0x5c]
push dword [eax]
call dword [0x56d8e0]
add eax, 0xffffffd3
neg eax
push eax
fild dword [esp]
pop ecx
fdiv dword [0x54ad2c]
push eax
fistp dword [esp]
call dword [0x56dac4]
push eax
call dword [0x56d9f8]
push eax
call dword [0x56db68]
mov dword [0x56b8a8], 0
mov dword [0x56b8ac], 0
push dword [ebx + 0x6c]
call dword [0x56e068]
test eax, eax
jne 0x4c7cce
jmp 0x4c839a
push 0
call fcn.004bba00
push 4
push dword [0x562528]
push 0x5573c8
call dword [0x56d9fc]
push eax
call dword [0x56e4a0]
sub eax, eax
push eax
push 0xffffffffffffffff
push 1
push eax
push 7
mov eax, dword [ebp + 0x58]
push dword [eax]
push 0x7c
call dword [0x56da54]
push eax
mov eax, dword [ebp + 0x5c]
push dword [eax]
call dword [0x56d9f8]
push eax
push 0x207c
call dword [0x56da58]
push eax
lea eax, [ebx + 0x30]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x30]
push eax
push 0x40280000
push 0
call fcn.004d7f30
lea ecx, [ebx + 0x30]
call dword [0x56e370]
mov eax, dword [ebp + 0x2c]
push dword [eax]
call dword [0x56db7c]
push eax
push 0
call dword [0x56da04]
test eax, eax
jne 0x4c7d63
jmp 0x4c8293
sub eax, eax
push eax
push eax
lea eax, [ebx + 0x14]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x14]
push eax
push 0
push 1
push 0x54f364
lea eax, [ebx + 0x18]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x18]
push eax
push dword [ebx + 0x6c]
lea eax, [ebx + 0x1c]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x1c]
push eax
push 1
push 0x54b520
lea eax, [ebx + 0x30]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x30]
push eax
call fcn.004dd060
mov word [ebx + 0x60], ax
lea ecx, [ebx + 0x30]
push ecx
lea ecx, [ebx + 0x1c]
push ecx
lea ecx, [ebx + 0x18]
push ecx
lea ecx, [ebx + 0x14]
push ecx
mov eax, 4
call dword [0x56e8a4]
movsx eax, word [ebx + 0x60]
cmp eax, 0xffffffff
je 0x4c7de8
jmp 0x4c828e
mov eax, dword [ebp + 0x2c]
push dword [eax]
push dword [ebx + 0x6c]
call dword [0x56da04]
test eax, eax
je 0x4c7e03
jmp 0x4c8244
mov eax, dword [ebp + 0x2c]
push dword [eax]
push 0x54b280
call dword [0x56fc10]
mov word [ebx + 0x62], ax
push dword [ebp + 0x2c]
mov eax, dword [ebp + 0x2c]
push dword [eax]
movsx eax, word [ebx + 0x62]
inc eax
push eax
call dword [0x56db28]
push eax
call dword [0x56db68]
push dword [0x56b8b0]
mov eax, dword [ebp + 0x2c]
push dword [eax]
call dword [0x56d9f8]
push eax
lea eax, [ebx + 0x68]
push eax
call dword [0x56db64]
push dword [ebx + 0x68]
call dword [0x56e068]
test eax, eax
jne 0x4c7e64
jmp 0x4c8012
bt dword [ebp + 0x60], 0
sbb eax, eax
cmp eax, 0xffffffff
je 0x4c7e79
jmp 0x4c7ff9
push dword [0x55d6b8]
push dword [0x55dbf8]
call dword [0x56d9fc]
push eax
push 0
call dword [0x56da54]
push eax
lea eax, [ebx + 0x74]
push eax
call dword [0x56db64]
push dword [ebx + 0x74]
call dword [0x56e964]
push eax
push 0x54af84
call dword [0x56e964]
push eax
push 0x554418
call dword [0x56e964]
push eax
push 0x554424
call dword [0x56e964]
push eax
call dword [0x56f094]
push dword [ebx + 0x74]
call dword [0x56e964]
push eax
sub eax, eax
push eax
push eax
push eax
call dword [0x56f094]
push dword [0x55d6b8]
push dword [0x55dbfc]
call dword [0x56d9fc]
push eax
push 0x4003
push 2
push eax
push 0
call dword [0x56e07c]
push 2
call dword [0x56dbcc]
call dword [0x56db08]
push eax
push 0x20
call dword [0x56da54]
push eax
call dword [0x56db0c]
push eax
call dword [0x56d9f8]
push eax
push 0x5573e8
call dword [0x56d9fc]
push eax
push dword [0x562528]
call dword [0x56d9fc]
push eax
push 0x55740c
call dword [0x56d9fc]
push eax
mov eax, dword [ebp + 0x28]
push dword [eax]
call dword [0x56d9f8]
push eax
push 0x55742c
call dword [0x56d9fc]
push eax
push dword [ebx + 0x40]
call dword [0x56d9fc]
push eax
push 0x55094c
call dword [0x56d9fc]
push eax
push dword [ebx + 0x3c]
call dword [0x56d9fc]
call dword [0x56e1ac]
pop edx
push 2
call dword [0x56e090]
push 2
call dword [0x56e080]
push 0
call fcn.004df520
push 0x557464
mov eax, dword [ebp + 0x28]
push dword [eax]
call dword [0x56d9f8]
push eax
push 0x5574a4
call dword [0x56d9fc]
push eax
lea eax, [ebx + 0x64]
push eax
call dword [0x56db64]
push dword [ebx + 0x64]
push dword [0x562528]
push 0x10
call dword [0x56dc60]
mov word [ebx + 0x62], ax
push 0
call fcn.0040fb34
call dword [0x56e8f0]
jmp 0x4c8012
call fcn.004d8454
push 1
call dword [0x56e080]
mov dword [ebx + 0x7c], 0xfffffffe
jmp 0x4c929d
push 1
sub eax, eax
push eax
push eax
call dword [0x56fe0c]
push 1
call dword [0x56e0d4]
mov dword [ebx + 0x44], eax
test eax, eax
jg 0x4c8036
jmp 0x4c823f
push dword [ebx + 0x6c]
push 0x5f
call dword [0x56da54]
push eax
call dword [0x56db08]
push eax
call dword [0x56d9f8]
push eax
push 0x5f
call dword [0x56da54]
push eax
call dword [0x56db0c]
push eax
push 2
call dword [0x56db14]
push eax
call dword [0x56d9f8]
push eax
call dword [0x56db0c]
push eax
push 4
push 2
call dword [0x56db30]
push eax
call dword [0x56d9f8]
push eax
call dword [0x56db0c]
push eax
push 2
call dword [0x56db1c]
push eax
call dword [0x56d9f8]
push eax
lea eax, [ebx + 0x48]
push eax
call dword [0x56db64]
push dword [ebx + 0x48]
push 0x4002
push 2
push eax
push 0
call dword [0x56e07c]
mov eax, dword [ebx + 0x44]
test eax, eax
jg 0x4c80cd
jmp 0x4c822f
and word [ebx + 0x3a], 0
movsx eax, word [ebx + 0x3a]
push eax
sub eax, eax
push eax
push 1
push eax
push 7
mov eax, dword [ebp + 0x58]
push dword [eax]
push 0x7c
call dword [0x56da54]
push eax
mov eax, dword [ebp + 0x5c]
push dword [eax]
call dword [0x56d9f8]
push eax
push 0x5574d4
call dword [0x56d9fc]
push eax
lea eax, [ebx + 0x30]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x30]
push eax
push 0x40280000
push 0
call fcn.004d7f30
lea ecx, [ebx + 0x30]
call dword [0x56e370]
push 2
call dword [0x56dbcc]
push 1
call dword [0x56e0d0]
sub eax, dword [ebx + 0x44]
neg eax
mov edx, 0xfffff
cmp eax, edx
jl 0x4c8148
mov eax, edx
push eax
push 1
call dword [0x56e0ec]
call dword [0x56dbec]
pop edx
push 1
call dword [0x56e0d0]
push edx
push eax
fild qword [esp]
pop ecx
pop ecx
fidiv dword [ebx + 0x44]
fmul dword [0x54ad54]
call dword [0x56dba0]
ficomp word [ebx + 0x3a]
fnstsw ax
test ah, 0x40
je 0x4c8189
jmp 0x4c8200
push 1
call dword [0x56e0d0]
push edx
push eax
fild qword [esp]
pop ecx
pop ecx
fidiv dword [ebx + 0x44]
fmul dword [0x54ad54]
call dword [0x56dba0]
fistp word [ebx + 0x3a]
movsx eax, word [ebx + 0x3a]
push eax
sub eax, eax
push eax
push 1
push eax
push 7
mov eax, dword [ebp + 0x58]
push dword [eax]
push 0x7c
call dword [0x56da54]
push eax
mov eax, dword [ebp + 0x5c]
push dword [eax]
call dword [0x56d9f8]
push eax
push 0x5574d4
call dword [0x56d9fc]
push eax
lea eax, [ebx + 0x30]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x30]
push eax
push 0x40280000
push 0
call fcn.004d7f30
lea ecx, [ebx + 0x30]
call dword [0x56e370]
call dword [0x56de4c]
push 1
call dword [0x56e0d0]
push edx
push eax
mov eax, dword [ebx + 0x44]
cdq
pop ecx
cmp eax, ecx
lahf
pop ecx
cmp edx, ecx
jl 0x4c8223
jg 0x4c8222
sahf
jbe 0x4c8223
test al, 0xf9
stc
jb 0x4c822f
jmp 0x4c8128
push 2
call dword [0x56e090]
push 2
call dword [0x56e080]
jmp 0x4c828e
mov eax, dword [ebp + 0x2c]
push dword [eax]
lea eax, [ebx + 0x68]
push eax
call dword [0x56db64]
mov eax, dword [ebp + 0x2c]
push dword [eax]
push 0x54b280
call dword [0x56fc10]
mov word [ebx + 0x62], ax
push dword [ebp + 0x2c]
mov eax, dword [ebp + 0x2c]
push dword [eax]
movsx eax, word [ebx + 0x62]
inc eax
push eax
call dword [0x56db28]
push eax
call dword [0x56db68]
push 0
lea eax, [ebx + 0x48]
push eax
call dword [0x56db64]
jmp 0x4c8312
push 0
lea eax, [ebx + 0x68]
push eax
call dword [0x56db64]
sub eax, eax
push eax
push eax
lea eax, [ebx + 0x14]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x14]
push eax
push 0
push 1
push 0x54b4e8
lea eax, [ebx + 0x18]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x18]
push eax
push dword [ebx + 0x6c]
lea eax, [ebx + 0x1c]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x1c]
push eax
push 1
push 0x54b4f4
lea eax, [ebx + 0x30]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x30]
push eax
call fcn.004dd060
mov word [ebx + 0x60], ax
lea ecx, [ebx + 0x30]
push ecx
lea ecx, [ebx + 0x1c]
push ecx
lea ecx, [ebx + 0x18]
push ecx
lea ecx, [ebx + 0x14]
push ecx
mov eax, 4
call dword [0x56e8a4]
movsx eax, word [ebp + 0x48]
test eax, eax
jns 0x4c831c
neg eax
push eax
movsx eax, word [ebp + 0x40]
test eax, eax
jns 0x4c8327
neg eax
pop edx
cmp eax, edx
je 0x4c8335
jmp 0x4c833f
sub eax, eax
mov word [ebp + 0x48], ax
mov word [ebp + 0x4c], ax
movsx eax, word [ebp + 0x50]
test eax, eax
jns 0x4c8349
neg eax
push eax
movsx eax, word [ebp + 0x40]
test eax, eax
jns 0x4c8354
neg eax
pop edx
cmp eax, edx
mov eax, 0xffffffff
je 0x4c835f
inc eax
push eax
movsx eax, word [ebp + 0x50]
test eax, eax
jns 0x4c836a
neg eax
push eax
movsx eax, word [ebp + 0x48]
test eax, eax
jns 0x4c8375
neg eax
pop edx
cmp eax, edx
mov eax, 0xffffffff
je 0x4c8380
inc eax
pop edx
or eax, edx
test eax, eax
jne 0x4c8390
jmp 0x4c839a
sub eax, eax
mov word [ebp + 0x50], ax
mov word [ebp + 0x54], ax
movsx eax, word [ebx + 0x60]
cmp eax, 0xffffffff
je 0x4c83ac
jmp 0x4c9224
push 1
call dword [0x56e0d4]
movsx edx, word [ebp + 0x30]
mov ecx, edx
cdq
idiv ecx
mov eax, edx
neg eax
sbb eax, eax
push eax
push dword [ebx + 0x68]
push 0
call dword [0x56da04]
neg eax
sbb eax, eax
pop edx
and eax, edx
test eax, eax
jne 0x4c83e3
jmp 0x4c859a
bt dword [ebp + 0x60], 0
sbb eax, eax
cmp eax, 0xffffffff
je 0x4c83f8
jmp 0x4c857c
push dword [0x55d6b8]
push dword [0x55dbf8]
call dword [0x56d9fc]
push eax
push 0
call dword [0x56da54]
push eax
lea eax, [ebx + 0x74]
push eax
call dword [0x56db64]
push dword [ebx + 0x74]
call dword [0x56e964]
push eax
push 0x54af84
call dword [0x56e964]
push eax
push 0x554418
call dword [0x56e964]
push eax
push 0x554424
call dword [0x56e964]
push eax
call dword [0x56f094]
push dword [ebx + 0x74]
call dword [0x56e964]
push eax
sub eax, eax
push eax
push eax
push eax
call dword [0x56f094]
push dword [0x55d6b8]
push dword [0x55dbfc]
call dword [0x56d9fc]
push eax
push 0x4003
push 2
push eax
push 0
call dword [0x56e07c]
push 2
call dword [0x56dbcc]
call dword [0x56db08]
push eax
push 0x20
call dword [0x56da54]
push eax
call dword [0x56db0c]
push eax
call dword [0x56d9f8]
push eax
push 0x5573e8
call dword [0x56d9fc]
push eax
push dword [0x562528]
call dword [0x56d9fc]
push eax
push 0x5574f4
call dword [0x56d9fc]
push eax
mov eax, dword [ebp + 0x28]
push dword [eax]
call dword [0x56d9f8]
push eax
push 0x557514
call dword [0x56d9fc]
push eax
push dword [ebx + 0x40]
call dword [0x56d9fc]
push eax
push 0x55094c
call dword [0x56d9fc]
push eax
push dword [ebx + 0x3c]
call dword [0x56d9fc]
call dword [0x56e1ac]
pop edx
push 2
call dword [0x56e090]
push 2
call dword [0x56e080]
push 1
call dword [0x56e080]
push 0x557554
mov eax, dword [ebp + 0x28]
push dword [eax]
call dword [0x56d9f8]
push eax
push 0x557580
call dword [0x56d9fc]
push eax
lea eax, [ebx + 0x64]
push eax
call dword [0x56db64]
push 0
call fcn.004df520
push dword [ebx + 0x64]
push dword [0x562528]
push 0x10
call dword [0x56dc60]
push 0
call fcn.0040fb34
call dword [0x56e8f0]
jmp 0x4c8595
call fcn.004d8454
push 1
call dword [0x56e080]
mov dword [ebx + 0x7c], 0xffffffff
jmp 0x4c929d
jmp 0x4c921f
push dword [ebp + 0x20]
movsx eax, word [ebp + 0x54]
push eax
movsx eax, word [ebp + 0x50]
push eax
movsx eax, word [ebp + 0x4c]
push eax
movsx eax, word [ebp + 0x48]
push eax
movsx eax, word [ebp + 0x44]
push eax
movsx eax, word [ebp + 0x40]
push eax
push dword [ebp + 0x34]
movsx eax, word [ebp + 0x30]
push eax
push dword [ebx + 0x6c]
lea eax, [ebx + 0x30]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x30]
push eax
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
lea eax, [ebp + 0x14]
push eax
call fcn.004c933c
mov dword [ebx + 0x70], eax
lea ecx, [ebx + 0x30]
call dword [0x56e370]
mov eax, dword [ebp + 0x20]
mov eax, dword [eax]
add eax, eax
sbb eax, eax
not eax
push eax
push dword [ebx + 0x68]
push 0
call dword [0x56da04]
neg eax
sbb eax, eax
pop edx
and eax, edx
test eax, eax
jne 0x4c861a
jmp 0x4c917e
push dword [ebx + 0x68]
push 0x4002
push 2
push eax
push 0
call dword [0x56e07c]
push 2
call dword [0x56e080]
push dword [ebx + 0x68]
push 0x4004
push 2
push eax
push 0
call dword [0x56e07c]
push 2
sub eax, eax
push eax
push eax
call dword [0x56fe0c]
sub eax, eax
mov dword [ebx + 0x5c], eax
mov word [ebx + 0x3a], ax
mov dword [ebx + 0x78], eax
mov eax, dword [ebp + 0x20]
mov eax, dword [eax]
mov dword [ebx + 0x10], eax
mov edx, dword [ebx + 0x78]
cmp edx, eax
jg 0x4c88b4
mov eax, dword [ebp + 0x20]
mov eax, dword [eax]
test eax, eax
jg 0x4c8685
jmp 0x4c871d
fild dword [ebx + 0x78]
mov eax, dword [ebp + 0x20]
fild dword [eax]
fdivp st(1)
fmul dword [0x54ad54]
call dword [0x56dba0]
ficomp word [ebx + 0x3a]
fnstsw ax
test ah, 0x40
je 0x4c86ae
jmp 0x4c871d
fild dword [ebx + 0x78]
mov eax, dword [ebp + 0x20]
fild dword [eax]
fdivp st(1)
fmul dword [0x54ad54]
call dword [0x56dba0]
fistp word [ebx + 0x3a]
movsx eax, word [ebx + 0x3a]
push eax
sub eax, eax
push eax
push 1
push eax
push 7
mov eax, dword [ebp + 0x58]
push dword [eax]
push 0x7c
call dword [0x56da54]
push eax
mov eax, dword [ebp + 0x5c]
push dword [eax]
call dword [0x56d9f8]
push eax
push 0x5575e8
call dword [0x56d9fc]
push eax
lea eax, [ebx + 0x30]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x30]
push eax
push 0x40280000
push 0
call fcn.004d7f30
lea ecx, [ebx + 0x30]
call dword [0x56e370]
mov eax, dword [ebx + 0x78]
imul eax, eax, 4
mov ecx, dword [ebp + 0x1c]
add eax, dword [ecx + 0x1c]
mov eax, dword [eax]
cdq
push edx
push eax
push 1
call dword [0x56e0d0]
pop ecx
xor eax, ecx
pop ecx
xor edx, ecx
or eax, edx
jne 0x4c8749
jmp 0x4c8762
push 1
mov eax, dword [ebx + 0x78]
imul eax, eax, 4
mov ecx, dword [ebp + 0x1c]
add eax, dword [ecx + 0x1c]
mov eax, dword [eax]
cdq
push edx
push eax
call dword [0x56fe0c]
movsx eax, word [ebp + 0x14]
cmp eax, 1
je 0x4c8774
jmp 0x4c87a2
push 1
movsx eax, word [ebp + 0x30]
push eax
lea eax, [ebx + 0x30]
and dword [eax], 0
push eax
call fcn.004e1e68
push dword [ebx + 0x30]
lea eax, [ebx + 0x74]
push eax
call dword [0x56db64]
lea ecx, [ebx + 0x30]
call dword [0x56e370]
jmp 0x4c87ba
movsx eax, word [ebp + 0x30]
push eax
push 1
call dword [0x56e0ec]
push eax
lea eax, [ebx + 0x74]
push eax
call dword [0x56db64]
movsx eax, word [ebp + 0x38]
neg eax
sbb eax, eax
not eax
push eax
push dword [ebx + 0x74]
movsx eax, word [ebp + 0x38]
push eax
call dword [0x56e870]
movsx edx, word [ebp + 0x3c]
cmp eax, edx
mov eax, 0xffffffff
jne 0x4c87e1
inc eax
pop edx
or eax, edx
test eax, eax
jne 0x4c87f1
jmp 0x4c8893
mov dword [ebx + 0x4c], 1
movsx eax, word [ebp + 0x30]
mov dword [ebx + 0xc], eax
mov edx, dword [ebx + 0x4c]
cmp edx, eax
jg 0x4c8842
push dword [ebx + 0x74]
push dword [ebx + 0x4c]
call dword [0x56e870]
push eax
fild dword [esp]
pop ecx
fadd qword [0x56b8a0]
fstp qword [0x56b8a0]
mov eax, dword [ebx + 0x4c]
inc eax
jo 0x4c8842
cmp eax, dword [ebx + 0xc]
mov dword [ebx + 0x4c], eax
jg 0x4c8842
jmp 0x4c880a
movsx eax, word [ebp + 0x14]
cmp eax, 1
je 0x4c8854
jmp 0x4c887a
push dword [ebx + 0x74]
lea eax, [ebx + 0x30]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x30]
push eax
push 2
call fcn.004e1f48
lea ecx, [ebx + 0x30]
call dword [0x56e370]
jmp 0x4c888c
push 2
call dword [0x56dbcc]
mov eax, dword [ebx + 0x74]
call dword [0x56dbec]
pop edx
mov eax, dword [ebx + 0x5c]
inc eax
mov dword [ebx + 0x5c], eax
call dword [0x56de4c]
mov eax, dword [ebx + 0x78]
inc eax
jo 0x4c88b4
cmp eax, dword [ebx + 0x10]
mov dword [ebx + 0x78], eax
jg 0x4c88b4
jmp 0x4c8673
push 2
call dword [0x56e090]
mov eax, dword [ebp + 0x2c]
push dword [eax]
mov eax, dword [ebp + 0x28]
push dword [eax]
call dword [0x56da04]
test eax, eax
je 0x4c88d9
jmp 0x4c9160
push dword [ebx + 0x68]
call dword [0x56e068]
not eax
test eax, eax
jne 0x4c88f1
jmp 0x4c8a68
push dword [0x55d6b8]
push dword [0x55dbf8]
call dword [0x56d9fc]
push eax
push 0
call dword [0x56da54]
push eax
lea eax, [ebx + 0x74]
push eax
call dword [0x56db64]
push dword [ebx + 0x74]
call dword [0x56e964]
push eax
push 0x54af84
call dword [0x56e964]
push eax
push 0x554418
call dword [0x56e964]
push eax
push 0x554424
call dword [0x56e964]
push eax
call dword [0x56f094]
push dword [ebx + 0x74]
call dword [0x56e964]
push eax
sub eax, eax
push eax
push eax
push eax
call dword [0x56f094]
push 2
call dword [0x56e080]
push dword [0x55d6b8]
push dword [0x55dbfc]
call dword [0x56d9fc]
push eax
push 0x4003
push 2
push eax
push 0
call dword [0x56e07c]
push 2
call dword [0x56dbcc]
call dword [0x56db08]
push eax
push 0x20
call dword [0x56da54]
push eax
call dword [0x56db0c]
push eax
call dword [0x56d9f8]
push eax
push 0x5573e8
call dword [0x56d9fc]
push eax
push dword [0x562528]
call dword [0x56d9fc]
push eax
push 0x557608
call dword [0x56d9fc]
push eax
push dword [ebx + 0x68]
call dword [0x56d9fc]
push eax
push 0x55761c
call dword [0x56d9fc]
push eax
push dword [ebx + 0x40]
call dword [0x56d9fc]
push eax
push 0x55094c
call dword [0x56d9fc]
push eax
push dword [ebx + 0x3c]
call dword [0x56d9fc]
call dword [0x56e1ac]
pop edx
push 2
call dword [0x56e090]
push 2
call dword [0x56e080]
push 1
call dword [0x56e080]
push 0
call fcn.004bba00
push 0x557668
push dword [ebx + 0x68]
call dword [0x56d9fc]
push eax
push 0x55769c
call dword [0x56d9fc]
push eax
sub eax, eax
push eax
push eax
call dword [0x56dc60]
push 0
call fcn.0040fb34
call dword [0x56e8f0]
jmp 0x4c911c
push 1
sub eax, eax
push eax
push eax
call dword [0x56fe0c]
push 1
push 2
call dword [0x56e100]
push eax
call dword [0x56f238]
test eax, eax
je 0x4c8a92
jmp 0x4c8c04
push dword [0x55d6b8]
push dword [0x55dbf8]
call dword [0x56d9fc]
push eax
push 0
call dword [0x56da54]
push eax
lea eax, [ebx + 0x74]
push eax
call dword [0x56db64]
push dword [ebx + 0x74]
call dword [0x56e964]
push eax
push 0x54af84
call dword [0x56e964]
push eax
push 0x554418
call dword [0x56e964]
push eax
push 0x554424
call dword [0x56e964]
push eax
call dword [0x56f094]
push dword [ebx + 0x74]
call dword [0x56e964]
push eax
sub eax, eax
push eax
push eax
push eax
call dword [0x56f094]
push 2
call dword [0x56e080]
push dword [0x55d6b8]
push dword [0x55dbfc]
call dword [0x56d9fc]
push eax
push 0x4003
push 2
push eax
push 0
call dword [0x56e07c]
push 2
call dword [0x56dbcc]
call dword [0x56db08]
push eax
push 0x20
call dword [0x56da54]
push eax
call dword [0x56db0c]
push eax
call dword [0x56d9f8]
push eax
push 0x5573e8
call dword [0x56d9fc]
push eax
push dword [0x562528]
call dword [0x56d9fc]
push eax
push 0x5576c4
call dword [0x56d9fc]
push eax
push dword [ebx + 0x6c]
call dword [0x56d9fc]
push eax
push 0x5576d8
call dword [0x56d9fc]
push eax
push dword [ebx + 0x40]
call dword [0x56d9fc]
push eax
push 0x55094c
call dword [0x56d9fc]
push eax
push dword [ebx + 0x3c]
call dword [0x56d9fc]
call dword [0x56e1ac]
pop edx
push 2
call dword [0x56e090]
push 2
call dword [0x56e080]
push 1
call dword [0x56e080]
push 0
call fcn.004bba00
push 0x55771c
push dword [ebx + 0x6c]
call dword [0x56d9fc]
push eax
push 0x557754
call dword [0x56d9fc]
push eax
sub eax, eax
push eax
push eax
call dword [0x56dc60]
push 0
call fcn.0040fb34
call dword [0x56e8f0]
push 1
sub eax, eax
push eax
push eax
call dword [0x56fe0c]
push 2
sub eax, eax
push eax
push eax
call dword [0x56fe0c]
push 2
call dword [0x56e0d4]
mov dword [ebx + 0x44], eax
test eax, eax
jg 0x4c8c34
jmp 0x4c8d96
and word [ebx + 0x3a], 0
movsx eax, word [ebx + 0x3a]
push eax
sub eax, eax
push eax
push 1
push eax
push 7
mov eax, dword [ebp + 0x58]
push dword [eax]
push 0x7c
call dword [0x56da54]
push eax
mov eax, dword [ebp + 0x5c]
push dword [eax]
call dword [0x56d9f8]
push eax
push 0x557778
call dword [0x56d9fc]
push eax
lea eax, [ebx + 0x30]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x30]
push eax
push 0x40280000
push 0
call fcn.004d7f30
lea ecx, [ebx + 0x30]
call dword [0x56e370]
push 1
call dword [0x56dbcc]
push 2
call dword [0x56e0d0]
sub eax, dword [ebx + 0x44]
neg eax
mov edx, 0xfffff
cmp eax, edx
jl 0x4c8caf
mov eax, edx
push eax
push 2
call dword [0x56e0ec]
call dword [0x56dbec]
pop edx
call dword [0x56de4c]
push 2
call dword [0x56e0d0]
push edx
push eax
fild qword [esp]
pop ecx
pop ecx
fidiv dword [ebx + 0x44]
fmul dword [0x54ad54]
call dword [0x56dba0]
ficomp word [ebx + 0x3a]
fnstsw ax
test ah, 0x40
je 0x4c8cf6
jmp 0x4c8d6d
push 2
call dword [0x56e0d0]
push edx
push eax
fild qword [esp]
pop ecx
pop ecx
fidiv dword [ebx + 0x44]
fmul dword [0x54ad54]
call dword [0x56dba0]
fistp word [ebx + 0x3a]
movsx eax, word [ebx + 0x3a]
push eax
sub eax, eax
push eax
push 1
push eax
push 7
mov eax, dword [ebp + 0x58]
push dword [eax]
push 0x7c
call dword [0x56da54]
push eax
mov eax, dword [ebp + 0x5c]
push dword [eax]
call dword [0x56d9f8]
push eax
push 0x557778
call dword [0x56d9fc]
push eax
lea eax, [ebx + 0x30]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x30]
push eax
push 0x40280000
push 0
call fcn.004d7f30
lea ecx, [ebx + 0x30]
call dword [0x56e370]
push 2
call dword [0x56e0d0]
push edx
push eax
mov eax, dword [ebx + 0x44]
cdq
pop ecx
cmp eax, ecx
lahf
pop ecx
cmp edx, ecx
jl 0x4c8d8a
jg 0x4c8d89
sahf
jbe 0x4c8d8a
test al, 0xf9
stc
jb 0x4c8d96
jmp 0x4c8c8f
push 1
call dword [0x56e090]
mov dword [ebx + 0x50], 0
mov dword [ebx + 0x54], 0
push 1
call dword [0x56e0d4]
mov dword [ebx + 0x44], eax
and word [ebx + 0x3a], 0
push 1
sub eax, eax
push eax
push eax
call dword [0x56fe0c]
push 1
call dword [0x56e0d8]
test eax, eax
je 0x4c8ddd
jmp 0x4c8f33
call dword [0x56de4c]
movsx eax, word [ebp + 0x14]
cmp eax, 1
je 0x4c8df5
jmp 0x4c8e23
push 1
movsx eax, word [ebp + 0x30]
push eax
lea eax, [ebx + 0x30]
and dword [eax], 0
push eax
call fcn.004e1e68
push dword [ebx + 0x30]
lea eax, [ebx + 0x74]
push eax
call dword [0x56db64]
lea ecx, [ebx + 0x30]
call dword [0x56e370]
jmp 0x4c8e3b
movsx eax, word [ebp + 0x30]
push eax
push 1
call dword [0x56e0ec]
push eax
lea eax, [ebx + 0x74]
push eax
call dword [0x56db64]
push 1
call dword [0x56e0d0]
push edx
push eax
fild qword [esp]
pop ecx
pop ecx
fidiv dword [ebx + 0x44]
fmul dword [0x54ad54]
call dword [0x56dba0]
ficomp word [ebx + 0x3a]
fnstsw ax
test ah, 0x40
je 0x4c8e6c
jmp 0x4c8ee3
push 1
call dword [0x56e0d0]
push edx
push eax
fild qword [esp]
pop ecx
pop ecx
fidiv dword [ebx + 0x44]
fmul dword [0x54ad54]
call dword [0x56dba0]
fistp word [ebx + 0x3a]
movsx eax, word [ebx + 0x3a]
push eax
sub eax, eax
push eax
push 1
push eax
push 7
mov eax, dword [ebp + 0x58]
push dword [eax]
push 0x7c
call dword [0x56da54]
push eax
mov eax, dword [ebp + 0x5c]
push dword [eax]
call dword [0x56d9f8]
push eax
push 0x55779c
call dword [0x56d9fc]
push eax
lea eax, [ebx + 0x30]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x30]
push eax
push 0x40280000
push 0
call fcn.004d7f30
lea ecx, [ebx + 0x30]
call dword [0x56e370]
mov dword [ebx + 0x4c], 1
movsx eax, word [ebp + 0x30]
mov dword [ebx + 0x10], eax
mov edx, dword [ebx + 0x4c]
cmp edx, eax
jg 0x4c8f2e
push dword [ebx + 0x74]
push dword [ebx + 0x4c]
call dword [0x56e870]
push eax
fild dword [esp]
pop ecx
fadd qword [ebx + 0x50]
fstp qword [ebx + 0x50]
mov eax, dword [ebx + 0x4c]
inc eax
jo 0x4c8f2e
cmp eax, dword [ebx + 0x10]
mov dword [ebx + 0x4c], eax
jg 0x4c8f2e
jmp 0x4c8efc
jmp 0x4c8dc8
fld qword [0x56b8a0]
fcomp qword [ebx + 0x50]
fnstsw ax
test ah, 0x40
je 0x4c8f4c
jmp 0x4c90be
push dword [0x55d6b8]
push dword [0x55dbf8]
call dword [0x56d9fc]
push eax
push 0
call dword [0x56da54]
push eax
lea eax, [ebx + 0x74]
push eax
call dword [0x56db64]
push dword [ebx + 0x74]
call dword [0x56e964]
push eax
push 0x54af84
call dword [0x56e964]
push eax
push 0x554418
call dword [0x56e964]
push eax
push 0x554424
call dword [0x56e964]
push eax
call dword [0x56f094]
push dword [ebx + 0x74]
call dword [0x56e964]
push eax
sub eax, eax
push eax
push eax
push eax
call dword [0x56f094]
push 2
call dword [0x56e080]
push dword [0x55d6b8]
push dword [0x55dbfc]
call dword [0x56d9fc]
push eax
push 0x4003
push 2
push eax
push 0
call dword [0x56e07c]
push 2
call dword [0x56dbcc]
call dword [0x56db08]
push eax
push 0x20
call dword [0x56da54]
push eax
call dword [0x56db0c]
push eax
call dword [0x56d9f8]
push eax
push 0x5573e8
call dword [0x56d9fc]
push eax
push dword [0x562528]
call dword [0x56d9fc]
push eax
push 0x5577bc
call dword [0x56d9fc]
push eax
push dword [ebx + 0x6c]
call dword [0x56d9fc]
push eax
push 0x5577d8
call dword [0x56d9fc]
push eax
push dword [ebx + 0x40]
call dword [0x56d9fc]
push eax
push 0x55094c
call dword [0x56d9fc]
push eax
push dword [ebx + 0x3c]
call dword [0x56d9fc]
call dword [0x56e1ac]
pop edx
push 2
call dword [0x56e090]
push 2
call dword [0x56e080]
push 1
call dword [0x56e080]
push 0
call fcn.004bba00
push 0x55781c
push dword [ebx + 0x6c]
call dword [0x56d9fc]
push eax
push 0x557854
call dword [0x56d9fc]
push eax
sub eax, eax
push eax
push eax
call dword [0x56dc60]
push 0
call fcn.0040fb34
call dword [0x56e8f0]
push dword [ebx + 0x48]
push 0
call dword [0x56da04]
test eax, eax
jne 0x4c90d6
jmp 0x4c90f5
push dword [ebx + 0x48]
lea eax, [ebx + 0x30]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x30]
push eax
call fcn.004df45c
lea ecx, [ebx + 0x30]
call dword [0x56e370]
push 2
call dword [0x56e080]
push dword [ebx + 0x68]
lea eax, [ebx + 0x30]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x30]
push eax
call fcn.004df45c
lea ecx, [ebx + 0x30]
call dword [0x56e370]
push 1
call dword [0x56e080]
push 2
call dword [0x56e080]
mov eax, dword [ebp + 0x28]
push dword [eax]
lea eax, [ebx + 0x30]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x30]
push eax
call fcn.004b4d74
mov dword [ebx + 0x70], eax
lea ecx, [ebx + 0x30]
call dword [0x56e370]
movsx eax, word [ebp + 0x30]
push eax
push dword [ebx + 0x5c]
push dword [ebp + 0x1c]
call fcn.004c9ef8
push 1
call dword [0x56e080]
push 2
call dword [0x56e080]
mov eax, dword [ebp + 0x20]
mov edx, dword [ebx + 0x5c]
dec edx
mov dword [eax], edx
jmp 0x4c91ea
mov eax, dword [ebp + 0x20]
mov eax, dword [eax]
add eax, eax
sbb eax, eax
push eax
push dword [ebx + 0x68]
push 0
call dword [0x56da04]
neg eax
sbb eax, eax
pop edx
and eax, edx
push eax
sub eax, eax
mov al, byte [ebp + 0x24]
neg eax
sbb eax, eax
not eax
pop edx
and eax, edx
test eax, eax
jne 0x4c91b6
jmp 0x4c91ea
push 1
call dword [0x56e080]
push 2
call dword [0x56e080]
mov eax, dword [ebp + 0x28]
push dword [eax]
lea eax, [ebx + 0x30]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x30]
push eax
call fcn.004b4d74
mov dword [ebx + 0x70], eax
lea ecx, [ebx + 0x30]
call dword [0x56e370]
push 1
call dword [0x56e080]
push 2
call dword [0x56e080]
push 4
push dword [0x55dc5c]
call dword [0x56e4a0]
call fcn.004d8454
mov byte [0x55e995], 0
mov eax, dword [ebx + 0x70]
mov dword [ebx + 0x7c], eax
jmp 0x4c929d
jmp 0x4c929d
push 1
call dword [0x56e080]
push 2
call dword [0x56e080]
push 4
push dword [0x55dc5c]
call dword [0x56e4a0]
call fcn.004d8454
mov byte [0x55e995], 0
bt dword [ebp + 0x60], 0
sbb eax, eax
cmp eax, 0xffffffff
je 0x4c9263
jmp 0x4c9291
mov eax, dword [ebp + 0x28]
push dword [eax]
lea eax, [ebx + 0x30]
push eax
call dword [0x56db64]
lea eax, [ebx + 0x30]
push eax
call fcn.004b4a2c
mov dword [ebx + 0x7c], eax
jmp 0x4c929d
mov dword [ebx + 0x7c], 0xfffffffd
jmp 0x4c929d
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
lea ecx, [ebx + 0x74]
lea edx, [ebx + 0x6c]
lea eax, [ebx + 0x68]
push ecx
push edx
push eax
lea ecx, [ebx + 0x64]
lea edx, [ebx + 0x58]
lea eax, [ebx + 0x48]
push ecx
push edx
push eax
lea ecx, [ebx + 0x40]
lea edx, [ebx + 0x3c]
push ecx
push edx
mov eax, 8
call dword [0x56e8a4]
mov eax, dword [ebx + 0x7c]
mov esp, ebp
pop ebp
pop ebx
pop edi
pop esi
ret 0x50
call dword [0x56e3f4]
lea ecx, [ebx + 0x20]
lea edx, [ebx + 0x30]
lea eax, [ebx + 0x1c]
push ecx
push edx
push eax
lea ecx, [ebx + 0x18]
lea edx, [ebx + 0x14]
push ecx
push edx
mov eax, 0x1000004
call dword [0x56e8a4]
ret