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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4ccf14
add esp, 0xffffff80
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x54], 0x400
mov dword [esp + 0x5c], 0x10400
xor eax, eax
xor ecx, ecx
xor edx, edx
jmp 0x4cc8dc
lea ebx, [edx + 1]
mov eax, ebx
mov ecx, edi
mov edx, dword [esp + 0x70]
cmp eax, 2
jge 0x4ccac9
mov dword [esp + 0x28], eax
lea ecx, [esp + eax*8 + 0x54]
mov edx, dword [ecx]
mov ebx, dword [esp + 0x8c]
cmp ebx, edx
xchg ebp, ebx
setb bl
xchg ebp, ebx
mov ecx, dword [ecx + 4]
mov esi, dword [esp + 0x90]
cmp esi, ecx
xchg edi, ebx
sete bl
xchg edi, ebx
setl al
and ebp, edi
or ebp, eax
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4cc928
mov ecx, dword [esp + 0x90]
jmp 0x4cc92a
mov ebx, edx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x30], ecx
lea eax, [0x5317a0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.00446320
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x50]
sub eax, ecx
mov dword [esp + 0x4c], eax
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x70], ebx
mov ebp, dword [esp + 0x84]
mov esi, dword [ebp + 0x10]
mov edi, dword [esp + 0x88]
mov dword [esp], edi
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
mov edi, dword [esp + 0x90]
mov ebp, dword [esp + 0x30]
sbb edi, ebp
mov dword [esp + 0x48], edi
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], eax
call esi
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x20]
test eax, eax
je 0x4cc9f5
mov eax, dword [0x6639a4]
cmp dword [0x6639a0], ecx
je 0x4cc9c9
mov eax, 1
jmp 0x4cc9f1
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x64], ebp
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00403330
movzx eax, byte [esp + 0xc]
xor eax, 1
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x64]
test al, al
jne 0x4cca4e
mov eax, dword [esp + 0x70]
mov dword [esp], eax
mov ecx, dword [esp + 0x50]
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.004cd5a0
mov eax, dword [esp + 0xc]
test eax, eax
jge 0x4cca94
mov edx, dword [esp + 0x28]
cmp edx, 1
je 0x4cca6b
mov ebx, dword [esp + 0x90]
mov ebp, dword [esp + 0x30]
cmp ebx, ebp
xchg ebp, ebx
sete bl
xchg ebp, ebx
mov esi, dword [esp + 0x8c]
mov edi, dword [esp + 0x50]
cmp esi, edi
sete bl
and ebx, ebp
test bl, bl
je 0x4cc8d1
jmp 0x4cca6b
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], ebx
mov dword [esp + 0x9c], ebp
sub esp, 0xffffff80
ret
mov eax, dword [0x663790]
mov ecx, dword [0x663794]
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], ecx
sub esp, 0xffffff80
ret
mov ecx, dword [esp + 0x50]
cmp ecx, eax
jb 0x4ccf0e
mov ebx, dword [esp + 0x4c]
mov ebp, ebx
add ebx, eax
mov esi, eax
sar eax, 0x1f
add ebp, esi
mov ebp, dword [esp + 0x48]
adc ebp, eax
sub ecx, esi
mov edi, ecx
neg ecx
sar ecx, 0x1f
and ecx, esi
mov esi, dword [esp + 0x70]
lea edx, [ecx + esi]
jmp 0x4ccacf
mov edi, ecx
xor ebp, ebp
xor ebx, ebx
cmp edi, 4
jb 0x4ccf02
lea ecx, [edi - 4]
mov esi, ecx
neg ecx
sar ecx, 0x1f
and ecx, 4
mov eax, ebx
lea ebx, [edx + ecx]
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], esi
mov dword [esp + 0x7c], esi
nop
cmp esi, 1
jbe 0x4ccef6
mov dword [esp + 0x2c], ebp
lea esi, [edi - 6]
movzx edx, word [edx + ecx]
mov dword [esp + 0x78], esi
mov dword [esp + 0x7c], esi
mov ecx, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 2
lea ebp, [ebx + esi]
mov dword [esp + 0x74], ebp
nop
cmp ecx, 1
jbe 0x4cceec
lea ecx, [edi - 8]
movzx ebx, word [ebx + esi]
mov dword [esp + 0x50], ebx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], ecx
mov esi, ecx
neg ecx
sar ecx, 0x1f
and ecx, 2
lea ebx, [ebp + ecx]
mov dword [esp + 0x74], ebx
nop
cmp esi, 1
jbe 0x4ccee0
lea esi, [edi - 0xa]
movzx ebp, word [ebp + ecx]
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x78], esi
mov dword [esp + 0x7c], esi
mov ecx, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 2
lea ebp, [ebx + esi]
mov dword [esp + 0x74], ebp
nop
cmp ecx, 1
jbe 0x4cced6
lea ecx, [edi - 0xc]
movzx ebx, word [ebx + esi]
mov dword [esp + 0x44], ebx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], ecx
mov esi, ecx
neg ecx
sar ecx, 0x1f
and ecx, 2
lea ebx, [ecx + ebp]
mov dword [esp + 0x74], ebx
nop
cmp esi, 3
jbe 0x4cceca
lea esi, [edi - 0x10]
mov ebp, dword [ebp + ecx]
mov dword [esp + 0x40], ebp
mov dword [esp + 0x78], esi
mov dword [esp + 0x7c], esi
mov ecx, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 4
lea ebp, [esi + ebx]
mov dword [esp + 0x74], ebp
nop
cmp ecx, 3
jbe 0x4ccec0
lea ecx, [edi - 0x14]
mov ebx, dword [ebx + esi]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], ecx
mov esi, ecx
neg ecx
sar ecx, 0x1f
and ecx, 4
lea ebx, [ecx + ebp]
mov dword [esp + 0x74], ebx
nop
cmp esi, 1
jbe 0x4cceb4
mov dword [esp + 0x38], edx
mov dword [esp + 0x34], eax
lea eax, [edi - 0x16]
movzx ecx, word [ebp + ecx]
mov word [esp + 0x26], cx
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
neg eax
sar eax, 0x1f
and eax, 2
add eax, ebx
mov dword [esp + 0x74], eax
lea eax, [0x542a80]
mov dword [esp], eax
call fcn.0040b290
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x38]
mov dword [eax], ecx
mov ecx, dword [esp + 0x50]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x4c]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], 0
mov ecx, dword [esp + 0x44]
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], 0
mov ecx, dword [esp + 0x40]
mov dword [eax + 0x18], ecx
mov dword [eax + 0x1c], 0
mov ecx, dword [esp + 0x3c]
mov dword [eax + 0x20], ecx
mov dword [eax + 0x24], 0
movzx ecx, word [esp + 0x26]
mov word [eax + 0x28], cx
movzx ecx, cx
mov edx, dword [esp + 0x74]
lea ebx, [esp + 0x74]
cmp dword [ebx + 4], ecx
jl 0x4cce70
mov dword [esp + 0x68], eax
mov dword [esp], 0
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00449a00
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x68]
mov dword [edx + 0x30], ecx
mov ecx, dword [0x68ad40]
test ecx, ecx
jne 0x4cccf6
mov dword [edx + 0x2c], eax
jmp 0x4cccfe
lea edi, [edx + 0x2c]
call fcn.0045c980
cmp dword [edx + 0x10], 0xffff
sete al
mov ecx, dword [edx + 0x14]
test ecx, ecx
sete cl
and eax, ecx
test al, al
jne 0x4ccd47
mov eax, dword [edx + 0x1c]
test eax, eax
sete al
cmp dword [edx + 0x18], 0xffff
sete cl
and ecx, eax
test cl, cl
jne 0x4ccd47
cmp dword [edx + 0x20], 0xffffffff
sete al
mov ecx, dword [edx + 0x24]
test ecx, ecx
sete cl
and eax, ecx
test al, al
je 0x4ccdf9
mov eax, dword [esp + 0x84]
mov dword [esp], eax
mov ecx, dword [esp + 0x88]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x34]
mov dword [esp + 8], edx
call fcn.004ccf20
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
test ebx, ebx
jne 0x4ccdd2
test eax, eax
sete al
xchg esi, ebx
setg bl
xchg esi, ebx
and eax, 1
or esi, eax
xchg esi, eax
test al, al
xchg esi, eax
je 0x4ccdd2
mov eax, dword [esp + 0x84]
mov dword [esp], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 4], eax
mov dword [esp + 0xc], edx
mov dword [esp + 8], ecx
mov eax, dword [esp + 0x68]
mov dword [esp + 0x10], eax
call fcn.004cd1a0
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
test ebx, ebx
jne 0x4ccddc
mov edx, dword [esp + 0x68]
jmp 0x4ccdf9
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], ebx
mov dword [esp + 0x9c], ebp
sub esp, 0xffffff80
ret
mov eax, dword [edx + 0x24]
mov ecx, dword [edx + 0x20]
test eax, eax
jl 0x4cce26
mov ebx, dword [esp + 0x8c]
cmp ebx, ecx
setbe cl
mov ebx, dword [esp + 0x90]
cmp ebx, eax
sete al
setl bl
and ecx, eax
or ecx, ebx
test cl, cl
je 0x4cce4f
mov eax, dword [0x663790]
mov ecx, dword [0x663794]
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], ecx
sub esp, 0xffffff80
ret
mov dword [esp + 0x94], edx
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
sub esp, 0xffffff80
ret
lea eax, [0x5353c0]
mov dword [esp], eax
call fcn.0040b290
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x5553af]
mov dword [eax], ecx
mov dword [esp + 0x94], 0
lea ecx, [0x587864]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x9c], eax
sub esp, 0xffffff80
ret
mov eax, 1
mov ecx, esi
call fcn.0045ca00
mov eax, 3
call fcn.0045ca00
mov eax, 3
mov ecx, esi
call fcn.0045ca00
mov eax, 1
call fcn.0045ca00
mov eax, 1
mov ecx, esi
call fcn.0045ca00
mov eax, 1
call fcn.0045ca00
mov eax, 1
mov ecx, esi
call fcn.0045ca00
mov eax, 4
mov ecx, edi
call fcn.0045ca60
call fcn.0045ca60
nop
call fcn.0045b540
jmp fcn.004cc880