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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x264
push ebx
push esi
xor ebx, ebx
cmp dword [0x10075ef0], ebx
push edi
mov edi, dword [ebp + 8]
mov dword [esp + 0xc], ecx
je 0x4c69e5
push 0x100
xor eax, eax
mov dword [esp + 0xb0], 0xff
call fcn.004b15e0
add esp, 4
push 0x1006b790
lea esi, [esp + 0xa8]
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], ebx
mov byte [eax], bl
call fcn.00498280
push edi
lea eax, [esp + 0x144]
call fcn.004ba0f0
mov eax, dword [eax]
add esp, 4
push eax
call fcn.00498280
mov eax, dword [esp + 0x140]
cmp eax, ebx
je 0x4c69cc
call fcn.004b16a0
mov dword [esp + 0x140], ebx
mov dword [esp + 0x144], ebx
mov dword [esp + 0x148], ebx
push 0x1005f3cc
lea esi, [esp + 0xa8]
call fcn.00498280
mov ecx, esi
push ecx
call fcn.0049ce70
xor ecx, ecx
mov eax, 0x1005f9b0
lea esp, [esp]
add eax, 2
add ecx, 1
cmp word [eax], bx
jne 0x4c69f0
push ecx
mov edx, 0x1005f9b0
mov eax, edi
call fcn.004ba790
add esp, 4
test eax, eax
jne 0x4c6d6a
mov edx, dword [0x100607d8]
mov ecx, dword [0x100607e0]
mov eax, dword [0x100607dc]
mov dword [esp + 0xd4], edx
mov dx, word [0x100607e4]
mov dword [esp + 0xdc], ecx
xor ecx, ecx
cmp word [edi], bx
mov dword [esp + 0xd8], eax
mov word [esp + 0xe0], dx
mov eax, edi
je 0x4c6d6a
add eax, 2
add ecx, 1
cmp word [eax], bx
jne 0x4c6a55
cmp ecx, 6
jb 0x4c6d6a
cmp word [edi + 0xa], 0x3a
jne 0x4c6d6a
mov ax, word [edi + 8]
push 4
lea ecx, [esp + 0x14]
push ecx
mov word [esp + 0xe4], ax
call dword [0x10075f84]
mov edx, dword [esp + 0xc]
mov ecx, dword [edx + 0x58]
mov eax, dword [ecx]
mov eax, dword [eax + 0x3c]
lea edx, [esp + 0x10]
push edx
push ebx
push 1
push 0x80000000
lea edx, [esp + 0xe4]
push edx
call eax
mov ecx, dword [esp + 0x10]
cmp ecx, ebx
je 0x4c6b49
mov edx, dword [ecx]
mov eax, dword [edx + 0x58]
call eax
test eax, eax
je 0x4c6b45
lea ecx, [esp + 0xd4]
push ecx
lea eax, [esp + 0x1d4]
call fcn.004979e0
mov edx, dword [esp + 0x1d0]
mov edi, dword [ebp + 0xc]
push edx
call fcn.00498aa0
lea ecx, [esp + 0x1d0]
call fcn.004894f0
mov eax, dword [ebp + 8]
add eax, 0xc
cmp word [eax], 0x5c
jne 0x4c6b0a
add eax, 2
push eax
lea eax, [esp + 0x1b0]
call fcn.004979e0
mov eax, dword [esp + 0x1ac]
mov edi, dword [ebp + 0x10]
push eax
call fcn.00498aa0
lea ecx, [esp + 0x1ac]
call fcn.004894f0
lea esi, [esp + 0x10]
call fcn.004a2a60
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [esp + 0x10]
cmp dword [0x10075ec4], ebx
je 0x4c6d5e
movzx edx, word [edi + 8]
mov eax, dword [0x10075ef4]
movzx esi, word [eax + edx*2]
sub esi, 0x41
cmp esi, 0x20
jae 0x4c6d5e
mov ecx, dword [0x10075e30]
mov edi, dword [ecx + 0xa08]
push ebx
push 0x24
lea edx, [esp + 0x254]
push edx
push 0x17
call dword [0x1005f1dc]
push eax
call edi
test eax, eax
jne 0x4c6d5a
mov al, byte [esp + esi + 0x250]
cmp al, bl
je 0x4c6baf
cmp al, 1
je 0x4c6baf
cmp al, 4
jne 0x4c6d5a
mov eax, dword [esp + 0xc]
lea ecx, [esp + 0x218]
push ecx
lea edx, [esp + 0xf8]
add eax, 0xfc
push edx
push eax
mov dword [esp + 0x100], esi
call fcn.004cae40
test eax, eax
je 0x4c6c44
push 0x1005f2dc
lea eax, [esp + 0x204]
call fcn.004979e0
mov eax, dword [esp + 0x200]
mov edi, dword [ebp + 0xc]
push eax
call fcn.00498aa0
lea ecx, [esp + 0x200]
call fcn.004894f0
mov ecx, dword [ebp + 8]
push ecx
lea eax, [esp + 0x210]
call fcn.004979e0
mov edx, dword [esp + 0x20c]
mov edi, dword [ebp + 0x10]
push edx
call fcn.00498aa0
lea ecx, [esp + 0x20c]
call fcn.004894f0
lea esi, [esp + 0x10]
call fcn.004a2a60
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov dword [esp + 0x88], 1
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x84], esi
mov dword [esp + 0x18], esi
mov edi, dword [esp + 0x88]
lea esi, [esp + 0x68]
call fcn.00497d70
mov esi, dword [esp + 0xc]
lea eax, [esp + 0x84]
push eax
mov ecx, eax
push ecx
add esi, 0xfc
push esi
call fcn.004c9c70
mov eax, dword [esp + 0x68]
lea edx, [esp + 0x88]
push edx
push eax
lea ecx, [esp + 0xe4]
push ecx
call dword [0x10075ec4]
lea edx, [esp + 0x18]
mov edi, eax
push edx
mov eax, esi
call fcn.004ca0e0
cmp edi, 0xea
je 0x4c6c62
cmp edi, ebx
jne 0x4c6d51
push 0x1006b7a0
lea eax, [esp + 0x160]
call fcn.004979e0
mov eax, dword [esp + 0x68]
add eax, 2
push eax
lea esi, [esp + 0x160]
call fcn.00497c00
mov esi, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
mov edx, dword [esp + 0x15c]
push esi
push ecx
mov ecx, dword [esp + 0x14]
push edx
call fcn.004c6930
cmp dword [esi + 4], ebx
je 0x4c6d1e
mov ecx, esi
call fcn.00497c70
test al, al
jne 0x4c6d1e
push 0x10060788
call fcn.00497c00
mov eax, dword [ebp + 8]
add eax, 0xe
push eax
call fcn.00497c00
lea ecx, [esp + 0x15c]
call fcn.004894f0
lea esi, [esp + 0x68]
call fcn.00497d50
lea esi, [esp + 0x10]
call fcn.004a2a60
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
lea esi, [esp + 0x68]
call fcn.00497d50
mov ecx, dword [esp + 0x10]
cmp ecx, ebx
je 0x4c6d6a
mov edx, dword [ecx]
mov eax, dword [edx + 8]
push ecx
call eax
mov esi, dword [esp + 0xc]
add esi, 0xdc
lea edi, [esp + 0x28]
mov byte [esp + 0x2d], bl
mov dword [esp + 0x58], esi
mov dword [esp + 0x28], esi
call fcn.00498da0
mov eax, esi
call fcn.004c9200
cmp eax, ebx
mov dword [esp + 0x80], eax
je 0x4c6ee1
nop
mov eax, dword [esp + 0x58]
lea ecx, [esp + 0x80]
push ecx
call fcn.004cadb0
mov edx, dword [eax]
push edx
lea edi, [esp + 0x90]
mov dword [esp + 0x90], ebx
mov dword [esp + 0x94], ebx
mov dword [esp + 0x98], ebx
call fcn.00498aa0
mov esi, dword [esp + 0x8c]
mov edx, dword [ebp + 8]
mov eax, esi
call fcn.004ba720
test eax, eax
push esi
je 0x4c7003
lea edi, [esp + 0x34]
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ebx
call fcn.00498aa0
xor eax, eax
cmp eax, 0x10060788
je 0x4c6e72
mov edi, dword [esp + 0x34]
mov dword [esp + 0x18], edi
xor esi, esi
mov eax, 0x10060788
lea esp, [esp]
add eax, 2
add esi, 1
cmp word [eax], bx
jne 0x4c6e20
add edi, esi
cmp edi, dword [esp + 0x38]
jb 0x4c6e4b
mov eax, dword [esp + 0x30]
lea ecx, [edi + edi + 0x200]
push ecx
call fcn.004b15e0
add esp, 4
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x18]
lea edx, [esi + esi + 2]
push edx
push 0x10060788
lea edx, [eax + ecx*2]
push edx
mov dword [esp + 0x40], edi
call dword [0x10075f88]
mov esi, dword [esp + 0x8c]
mov edi, dword [esp + 0x30]
xor ecx, ecx
cmp word [edi], bx
mov eax, edi
je 0x4c6e8b
nop
add eax, 2
add ecx, 1
cmp word [eax], bx
jne 0x4c6e80
mov eax, dword [ebp + 8]
push ecx
mov edx, edi
call fcn.004ba790
add esp, 4
test eax, eax
je 0x4c70a9
mov eax, edi
call fcn.004b16a0
cmp esi, ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
je 0x4c6ed4
mov eax, esi
call fcn.004b16a0
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x90], ebx
mov dword [esp + 0x94], ebx
cmp dword [esp + 0x80], ebx
jne 0x4c6da0
cmp byte [esp + 0x2d], bl
je 0x4c6f18
mov esi, dword [esp + 0x28]
push ebx
lea ecx, [esi + 8]
push ecx
call dword [0x1005f124]
mov edx, dword [esi + 0xc]
test edx, edx
lea eax, [esi + 0xc]
jle 0x4c6f18
push eax
call dword [0x1005f1f8]
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 0x10]
push ebx
push 1
push ecx
call dword [0x1005f144]
xor ecx, ecx
mov eax, 0x1006b61c
nop
add eax, 2
add ecx, 1
cmp word [eax], bx
jne 0x4c6f20
mov eax, dword [ebp + 8]
push ecx
mov edx, 0x1006b61c
call fcn.004ba790
add esp, 4
test eax, eax
jne 0x4c6f76
xor ecx, ecx
mov eax, 0x1006b61c
add eax, 2
add ecx, 1
cmp word [eax], bx
jne 0x4c6f47
mov edx, dword [ebp + 8]
movzx eax, word [edx + ecx*2]
cmp ax, bx
lea esi, [edx + ecx*2]
je 0x4c6f76
add esi, 2
cmp ax, 0x5c
movzx eax, word [esi]
je 0x4c715f
cmp ax, bx
jne 0x4c6f61
mov edx, dword [ebp + 8]
push edx
lea edi, [esp + 0x44]
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
call fcn.00498aa0
nop
mov edi, dword [esp + 0x40]
push edi
lea eax, [esp + 0x158]
push eax
call dword [0x10075f80]
xor esi, esi
movzx eax, word [edi]
cmp ax, 0x5c
je 0x4c6fb3
cmp ax, bx
jne 0x4c6ff2
lea ecx, [esp + 0x154]
push ecx
lea eax, [esp + 0x60]
mov word [esp + 0x158], si
call fcn.004bc2a0
add esp, 4
cmp dword [esp + 0x60], ebx
jne 0x4c7216
mov eax, dword [esp + 0x5c]
cmp eax, ebx
je 0x4c6ff2
call fcn.004b16a0
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
cmp word [edi], bx
je 0x4c727f
add esi, 2
add edi, 2
jmp 0x4c6fa5
mov edi, dword [ebp + 0xc]
call fcn.00498aa0
push 0x1005f2dc
lea edi, [esp + 0xcc]
mov dword [esp + 0xcc], ebx
mov dword [esp + 0xd0], ebx
mov dword [esp + 0xd4], ebx
call fcn.00498aa0
mov eax, dword [esp + 0xc8]
mov edi, dword [ebp + 0x10]
push eax
call fcn.00498aa0
cmp dword [esp + 0xc8], ebx
je 0x4c7056
mov eax, dword [esp + 0xc8]
call fcn.004b16a0
cmp esi, ebx
je 0x4c7061
mov eax, esi
call fcn.004b16a0
cmp byte [esp + 0x2d], bl
je 0x4c7a4b
mov esi, dword [esp + 0x28]
push ebx
lea ecx, [esi + 8]
push ecx
call dword [0x1005f124]
mov edx, dword [esi + 0xc]
test edx, edx
lea eax, [esi + 0xc]
jle 0x4c7a4b
push eax
call dword [0x1005f1f8]
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 0x10]
push ebx
push 1
push ecx
call dword [0x1005f144]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edi, dword [ebp + 0xc]
push esi
call fcn.00498aa0
mov edx, dword [esp + 0x34]
mov eax, dword [ebp + 8]
lea ecx, [eax + edx*2]
push ecx
lea edi, [esp + 0xc0]
mov dword [esp + 0xc0], ebx
mov dword [esp + 0xc4], ebx
mov dword [esp + 0xc8], ebx
call fcn.00498aa0
mov edx, dword [esp + 0xbc]
mov edi, dword [ebp + 0x10]
push edx
call fcn.00498aa0
cmp dword [esp + 0xbc], ebx
je 0x4c7103
mov eax, dword [esp + 0xbc]
call fcn.004b16a0
mov eax, dword [esp + 0x30]
call fcn.004b16a0
cmp esi, ebx
je 0x4c7117
mov eax, esi
call fcn.004b16a0
cmp byte [esp + 0x2d], bl
je 0x4c7a4b
mov esi, dword [esp + 0x28]
push ebx
lea eax, [esi + 8]
push eax
call dword [0x1005f124]
mov ecx, dword [esi + 0xc]
test ecx, ecx
lea eax, [esi + 0xc]
jle 0x4c7a4b
push eax
call dword [0x1005f1f8]
mov edx, dword [esp + 0x28]
mov eax, dword [edx + 0x10]
push ebx
push 1
push eax
call dword [0x1005f144]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp ax, bx
je 0x4c6f76
jmp 0x4c7170
cmp ax, 0x5c
je 0x4c6f76
cmp ax, 0x3a
je 0x4c7191
movzx eax, word [esi + 2]
add esi, 2
cmp ax, bx
jne 0x4c7170
jmp 0x4c6f76
movzx eax, word [esi]
cmp ax, bx
je 0x4c6f76
lea ecx, [ecx]
cmp ax, 0x5c
je 0x4c71b7
movzx eax, word [esi + 2]
add esi, 2
cmp ax, bx
jne 0x4c71a0
jmp 0x4c6f76
push 0x1006b7a0
lea edi, [esp + 0x104]
mov dword [esp + 0x104], ebx
mov dword [esp + 0x108], ebx
mov dword [esp + 0x10c], ebx
call fcn.00498aa0
push esi
mov esi, edi
call fcn.00497c00
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
mov esi, dword [esp + 0x100]
push eax
push ecx
mov ecx, dword [esp + 0x14]
push esi
call fcn.004c6930
cmp esi, ebx
je 0x4c7a4b
mov eax, esi
call fcn.004b16a0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push edi
lea edx, [esp + 0x60]
push edx
lea eax, [esp + 0x124]
push eax
call fcn.00497ac0
mov ecx, dword [eax]
add esp, 0xc
push ecx
lea edi, [esp + 0x44]
call fcn.00498aa0
mov eax, dword [esp + 0x11c]
cmp eax, ebx
je 0x4c725d
call fcn.004b16a0
mov dword [esp + 0x11c], ebx
mov dword [esp + 0x120], ebx
mov dword [esp + 0x124], ebx
mov eax, dword [esp + 0x5c]
cmp eax, ebx
je 0x4c6f90
call fcn.004b16a0
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
jmp 0x4c6f90
mov esi, dword [esp + 0x58]
mov byte [esp + 0x21], bl
mov dword [esp + 0x1c], esi
call dword [0x1005f060]
mov edx, dword [esi + 8]
mov edi, eax
cmp edi, edx
lea eax, [esi + 8]
mov dword [esp + 0xc], eax
jne 0x4c72a7
mov byte [esp + 0x21], bl
jmp 0x4c72cd
mov ecx, dword [eax]
test ecx, ecx
jne 0x4c72ba
push ebx
push edi
push eax
call dword [0x1005f120]
test eax, eax
je 0x4c72c8
mov eax, dword [esp + 0x1c]
push edi
call fcn.00498e00
test al, al
je 0x4c72cd
mov byte [esp + 0x21], 1
mov byte [esp + 0xe9], bl
call dword [0x1005f060]
mov edx, dword [esi + 8]
cmp eax, edx
lea edi, [esi + 8]
mov dword [esp + 0x14], eax
jne 0x4c72f1
mov byte [esp + 0xe9], bl
jmp 0x4c7320
mov eax, dword [edi]
test eax, eax
jne 0x4c7308
mov ecx, dword [esp + 0x14]
push ebx
push ecx
push edi
call dword [0x1005f120]
test eax, eax
je 0x4c7318
mov edx, dword [esp + 0x14]
push edx
mov eax, esi
call fcn.00498e00
test al, al
je 0x4c7320
mov byte [esp + 0xe9], 1
mov byte [esp + 0x1ed], bl
call dword [0x1005f060]
mov ecx, dword [edi]
cmp eax, ecx
mov dword [esp + 0x14], eax
jne 0x4c733b
xor al, al
jmp 0x4c736d
mov edx, dword [edi]
test edx, edx
jne 0x4c7352
mov eax, dword [esp + 0x14]
push ebx
push eax
push edi
call dword [0x1005f120]
test eax, eax
je 0x4c7362
mov ecx, dword [esp + 0x14]
push ecx
mov eax, esi
call fcn.00498e00
test al, al
je 0x4c7366
mov al, 1
jmp 0x4c736d
mov al, byte [esp + 0x1ed]
cmp al, bl
mov edx, dword [esi + 0x14]
mov dword [esp + 0x14], edx
je 0x4c739e
push ebx
push edi
call dword [0x1005f124]
mov ecx, dword [esi + 0xc]
test ecx, ecx
lea eax, [esi + 0xc]
jle 0x4c739e
push eax
call dword [0x1005f1f8]
mov edx, dword [esi + 0x10]
push ebx
push 1
push edx
call dword [0x1005f144]
cmp byte [esp + 0xe9], bl
je 0x4c73cd
push ebx
push edi
call dword [0x1005f124]
mov ecx, dword [esi + 0xc]
test ecx, ecx
lea eax, [esi + 0xc]
jle 0x4c73cd
push eax
call dword [0x1005f1f8]
mov edx, dword [esi + 0x10]
push ebx
push 1
push edx
call dword [0x1005f144]
mov eax, dword [esp + 0x14]
cmp eax, ebx
mov dword [esp + 0x3c], eax
je 0x4c7506
lea ecx, [ecx]
lea eax, [esp + 0x3c]
push eax
mov eax, dword [esp + 0x5c]
call fcn.004cadb0
mov ecx, dword [eax]
push ecx
lea edi, [esp + 0x74]
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebx
call fcn.00498aa0
mov esi, dword [esp + 0x70]
mov edx, dword [esp + 0x40]
mov eax, esi
call fcn.004ba720
test eax, eax
push esi
je 0x4c7664
lea edi, [esp + 0x50]
mov dword [esp + 0x50], ebx
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], ebx
call fcn.00498aa0
xor edx, edx
cmp edx, 0x10060788
je 0x4c749f
mov edi, dword [esp + 0x50]
mov dword [esp + 0x18], edi
xor esi, esi
mov eax, 0x10060788
add eax, 2
add esi, 1
cmp word [eax], bx
jne 0x4c7450
add edi, esi
cmp edi, dword [esp + 0x54]
jb 0x4c747b
lea eax, [edi + edi + 0x200]
push eax
mov eax, dword [esp + 0x50]
call fcn.004b15e0
add esp, 4
mov dword [esp + 0x4c], eax
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x18]
lea ecx, [esi + esi + 2]
push ecx
push 0x10060788
lea ecx, [edx + eax*2]
push ecx
mov dword [esp + 0x5c], edi
call dword [0x10075f88]
mov esi, dword [esp + 0x70]
mov edi, dword [esp + 0x4c]
xor ecx, ecx
cmp word [edi], bx
mov eax, edi
je 0x4c74bb
lea esp, [esp]
add eax, 2
add ecx, 1
cmp word [eax], bx
jne 0x4c74b0
mov eax, dword [esp + 0x40]
push ecx
mov edx, edi
call fcn.004ba790
add esp, 4
test eax, eax
je 0x4c7714
mov eax, edi
call fcn.004b16a0
cmp esi, ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x54], ebx
je 0x4c74fc
mov eax, esi
call fcn.004b16a0
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], ebx
cmp dword [esp + 0x3c], ebx
jne 0x4c73e0
cmp byte [esp + 0x21], bl
je 0x4c753e
mov ecx, dword [esp + 0xc]
push ebx
push ecx
call dword [0x1005f124]
mov eax, dword [esp + 0x1c]
mov edx, dword [eax + 0xc]
add eax, 0xc
test edx, edx
jle 0x4c753e
push eax
call dword [0x1005f1f8]
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 0x10]
push ebx
push 1
push ecx
call dword [0x1005f144]
mov edi, dword [esp + 0x40]
push edi
lea edx, [esp + 0x150]
push edx
call dword [0x10075f80]
lea eax, [esp + 0x14c]
mov dword [esp + 0x19c], eax
mov eax, dword [esp + 0x44]
movzx ecx, ax
lea edx, [eax + eax]
movzx eax, dx
lea edi, [edi + ecx*2]
mov dword [esp + 0x194], 0x18
mov dword [esp + 0x198], ebx
mov dword [esp + 0x1a0], 0x40
mov dword [esp + 0x1a4], ebx
mov dword [esp + 0x1a8], ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x3c], 1
mov dword [esp + 0xc], eax
lea ebx, [ebx]
movzx eax, word [edi]
cmp ax, 0x5c
je 0x4c75c2
cmp ax, bx
jne 0x4c7843
mov cx, word [esp + 0xc]
mov edx, dword [0x10075e30]
push 0x21
mov word [esp + 0x150], cx
mov eax, dword [edx + 0xec]
push 3
lea ecx, [esp + 0x24c]
push ecx
lea edx, [esp + 0x1a0]
push edx
push 0x100000
lea ecx, [esp + 0x38]
push ecx
call eax
test eax, eax
jne 0x4c7843
mov edi, 0x400
xor esi, esi
cmp edi, ebx
jbe 0x4c7619
push edi
call fcn.004b1530
add esp, 4
mov esi, eax
mov edx, dword [0x10075e30]
mov eax, dword [edx + 0x86c]
mov edx, dword [esp + 0x24]
lea ecx, [esp + 0x1f0]
push ecx
push edi
push esi
push 1
push edx
call eax
cmp eax, 0xc0000004
je 0x4c7651
cmp eax, 0x80000005
je 0x4c7651
cmp eax, 0xc0000023
jne 0x4c7798
add edi, 0x100
cmp esi, ebx
je 0x4c7608
mov eax, esi
call fcn.004b16a0
jmp 0x4c7608
mov edi, dword [ebp + 0xc]
call fcn.00498aa0
push 0x1005f2dc
lea edi, [esp + 0x9c]
mov dword [esp + 0x9c], ebx
mov dword [esp + 0xa0], ebx
mov dword [esp + 0xa4], ebx
call fcn.00498aa0
mov edx, dword [esp + 0x98]
mov edi, dword [ebp + 0x10]
push edx
call fcn.00498aa0
cmp dword [esp + 0x98], ebx
je 0x4c76b7
mov eax, dword [esp + 0x98]
call fcn.004b16a0
cmp esi, ebx
je 0x4c76c2
mov eax, esi
call fcn.004b16a0
cmp byte [esp + 0x21], bl
je 0x4c76fa
mov eax, dword [esp + 0xc]
push ebx
push eax
call dword [0x1005f124]
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 0xc]
add eax, 0xc
test ecx, ecx
jle 0x4c76fa
push eax
call dword [0x1005f1f8]
mov edx, dword [esp + 0x1c]
mov eax, dword [edx + 0x10]
push ebx
push 1
push eax
call dword [0x1005f144]
mov eax, dword [esp + 0x40]
cmp eax, ebx
je 0x4c7a4b
call fcn.004b16a0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edi, dword [ebp + 0xc]
push esi
call fcn.00498aa0
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x40]
lea eax, [edx + ecx*2]
push eax
lea edi, [esp + 0xb4]
mov dword [esp + 0xb4], ebx
mov dword [esp + 0xb8], ebx
mov dword [esp + 0xbc], ebx
call fcn.00498aa0
mov ecx, dword [esp + 0xb0]
mov edi, dword [ebp + 0x10]
push ecx
call fcn.00498aa0
cmp dword [esp + 0xb0], ebx
je 0x4c776f
mov eax, dword [esp + 0xb0]
call fcn.004b16a0
mov eax, dword [esp + 0x4c]
call fcn.004b16a0
cmp esi, ebx
je 0x4c7783
mov eax, esi
call fcn.004b16a0
cmp byte [esp + 0x21], bl
je 0x4c76fa
mov edx, dword [esp + 0xc]
push ebx
push edx
jmp 0x4c76ce
cmp eax, ebx
jne 0x4c7821
mov eax, dword [esp + 0x10]
push eax
lea ecx, [esp + 0x12c]
push esi
push ecx
call fcn.00489430
add esp, 8
push eax
lea edx, [esp + 0x13c]
push edx
call fcn.00497ac0
mov eax, dword [eax]
add esp, 0xc
push eax
lea edi, [esp + 0x44]
call fcn.00498aa0
mov eax, dword [esp + 0x134]
cmp eax, ebx
je 0x4c77f8
call fcn.004b16a0
mov dword [esp + 0x134], ebx
mov dword [esp + 0x138], ebx
mov dword [esp + 0x13c], ebx
mov eax, dword [esp + 0x128]
cmp eax, ebx
je 0x4c781d
call fcn.004b16a0
mov dword [esp + 0x128], ebx
mov dword [esp + 0x12c], ebx
mov dword [esp + 0x130], ebx
mov dword [esp + 0x3c], ebx
cmp esi, ebx
je 0x4c782c
mov eax, esi
call fcn.004b16a0
mov ecx, dword [esp + 0x24]
mov edx, dword [0x10075e30]
mov eax, dword [edx + 0x204]
push ecx
call eax
mov edi, dword [esp + 0x10]
mov esi, dword [esp + 0x40]
cmp esi, edi
je 0x4c7864
add dword [esp + 0xc], 0xfffe
sub edi, 2
cmp dword [esp + 0x3c], ebx
mov dword [esp + 0x10], edi
jne 0x4c75b0
push esi
lea ecx, [esp + 0xfc]
push ecx
call dword [0x10075f80]
lea edx, [esp + 0xf8]
mov dword [esp + 0x17c], 0x18
mov dword [esp + 0x180], ebx
mov dword [esp + 0x188], 0x40
mov dword [esp + 0x184], edx
mov dword [esp + 0x18c], ebx
mov dword [esp + 0x190], ebx
mov dword [esp + 0xc], ebx
xor edi, edi
movzx eax, word [esi]
cmp ax, 0x5c
mov dword [esp + 0x24], edi
je 0x4c78c8
cmp ax, bx
jne 0x4c798d
mov word [esp + 0xf8], di
cmp word [esi], 0x5c
jne 0x4c78e1
lea eax, [edi + 2]
mov word [esp + 0xf8], ax
mov ecx, dword [0x10075e30]
mov eax, dword [ecx + 0xec]
push 0x21
push 3
lea edx, [esp + 0x244]
push edx
lea ecx, [esp + 0x188]
push ecx
push 0x100001
lea edx, [esp + 0x90]
push edx
call eax
test eax, eax
jne 0x4c798d
push 0x400
call fcn.004b1530
mov ecx, dword [0x10075e30]
add esp, 4
mov ecx, dword [ecx + 0x3e4]
push 1
push ebx
push ebx
push 3
push 0x400
push eax
lea edx, [esp + 0x24c]
push edx
push ebx
push ebx
mov dword [esp + 0x110], eax
mov eax, dword [esp + 0xa0]
push ebx
push eax
mov dword [esp + 0x11c], 0x400
call ecx
mov ecx, dword [esp + 0x7c]
mov edx, dword [0x10075e30]
mov edi, eax
mov eax, dword [edx + 0x204]
push ecx
call eax
cmp edi, ebx
je 0x4c79a6
lea ecx, [esp + 0xec]
call fcn.00497cc0
mov edi, dword [esp + 0x24]
cmp word [esi], bx
je 0x4c7a54
add dword [esp + 0xc], 1
add edi, 2
add esi, 2
jmp 0x4c78b2
movzx ecx, word [esp + 0xc]
push ebx
lea edx, [esp + 0x44]
push edx
lea esi, [esp + 0x224]
mov dword [esp + 0x20], ecx
call fcn.004c87c0
mov eax, dword [eax]
mov edi, dword [ebp + 0xc]
push eax
call fcn.00498aa0
mov ecx, esi
call fcn.004894f0
mov ecx, dword [esp + 0x18]
add ecx, 1
push ecx
lea edx, [esp + 0x44]
push edx
or ecx, 0xffffffff
lea esi, [esp + 0x230]
call fcn.004c87c0
mov eax, dword [eax]
mov edi, dword [ebp + 0x10]
push eax
call fcn.00498aa0
mov ecx, esi
call fcn.004894f0
lea ecx, [esp + 0xec]
call fcn.00497cc0
mov eax, dword [ebp + 0xc]
push eax
lea eax, [esp + 0x16c]
call fcn.00497a00
mov eax, dword [esp + 0x58]
lea ecx, [esp + 0x168]
push ecx
mov edx, ecx
push edx
push eax
call fcn.004cabb0
mov eax, dword [esp + 0x168]
cmp eax, ebx
je 0x4c7a42
call fcn.004b16a0
lea ecx, [esp + 0x40]
call fcn.004894f0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, dword [ebp + 8]
push esi
mov edx, 0x1005f9b0
call fcn.004ba9c0
add esp, 4
test eax, eax
je 0x4c7b34
mov ecx, dword [0x100607d8]
mov edx, dword [0x100607dc]
mov eax, dword [0x100607e0]
mov dword [esp + 0x10c], ecx
mov cx, word [0x100607e4]
mov word [esp + 0x118], cx
mov ecx, esi
mov dword [esp + 0x110], edx
mov dword [esp + 0x114], eax
call fcn.004979c0
cmp eax, 6
jb 0x4c7b34
cmp word [esi + 0xa], 0x3a
jne 0x4c7b34
mov dx, word [esi + 8]
lea eax, [esp + 0x10c]
push eax
lea eax, [esp + 0x1f8]
mov word [esp + 0x118], dx
call fcn.004979e0
mov ecx, dword [esp + 0x1f4]
mov edi, dword [ebp + 0xc]
push ecx
call fcn.00498aa0
lea ecx, [esp + 0x1f4]
call fcn.004894f0
cmp word [esi + 0xc], 0x5c
lea eax, [esi + 0xc]
jne 0x4c7b06
add eax, 2
push eax
lea eax, [esp + 0x1e0]
call fcn.004979e0
mov edx, dword [esp + 0x1dc]
mov edi, dword [ebp + 0x10]
push edx
call fcn.00498aa0
lea ecx, [esp + 0x1dc]
call fcn.004894f0
jmp 0x4c7a0d
push 0x1005f2dc
lea eax, [esp + 0x1bc]
call fcn.004979e0
mov eax, dword [esp + 0x1b8]
mov edi, dword [ebp + 0xc]
push eax
call fcn.00498aa0
lea ecx, [esp + 0x1b8]
call fcn.004894f0
mov ecx, esi
push ecx
lea eax, [esp + 0x1c8]
call fcn.004979e0
mov edx, dword [esp + 0x1c4]
mov edi, dword [ebp + 0x10]
push edx
call fcn.00498aa0
lea ecx, [esp + 0x1c4]
call fcn.004894f0
lea ecx, [esp + 0x40]
call fcn.004894f0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc