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

Disassembly:
push ebx
push esi
push edi
push ebp
add esp, 0xfffffff8
mov edi, edx
mov ebp, eax
xor ebx, ebx
test edi, edi
je 0x4c7de3
mov eax, dword [ebp]
cmp eax, 0x210
jg 0x4c7166
je 0x4c7397
cmp eax, 8
jg 0x4c7148
je 0x4c7562
sub eax, 3
je 0x4c7d7a
sub eax, 2
je 0x4c7ba0
sub eax, 2
je 0x4c73d8
jmp 0x4c7de3
sub eax, 0x1d
je 0x4c76fd
sub eax, 0x5e
je 0x4c720c
sub eax, 0xad
je 0x4c71ba
jmp 0x4c7de3
cmp eax, 0xb013
jg 0x4c7191
je 0x4c773d
sub eax, 0xa100
je 0x4c71aa
sub eax, 0xf0b
je 0x4c7256
dec eax
je 0x4c76fd
jmp 0x4c7de3
sub eax, 0xb014
je 0x4c79ce
sub eax, 5
je 0x4c7376
jmp 0x4c7de3
mov eax, ebp
mov edx, edi
call fcn.004c666c
mov ebx, eax
jmp 0x4c7de3
xor edx, edx
mov eax, edi
call fcn.004c65c8
test al, al
je 0x4c71ce
mov bl, 1
jmp 0x4c7de3
call fcn.0042d5b0
test al, al
je 0x4c7de3
mov eax, dword [edi + 0x44]
mov edx, dword [0x43c148]
call fcn.00403fc4
test al, al
je 0x4c7de3
push 0
push 0
mov eax, dword [edi + 0x44]
call fcn.004469cc
push eax
mov eax, dword [0x505858]
mov eax, dword [eax]
call eax
jmp 0x4c7de3
mov eax, dword [edi + 0x44]
test eax, eax
je 0x4c7de3
cmp dword [eax + 0x7c], 0
je 0x4c7de3
mov eax, edi
call fcn.004c5b58
test eax, eax
je 0x4c7de3
mov eax, edi
call fcn.004c5b58
mov al, byte [eax + 0x3c]
push eax
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x44]
mov edx, dword [edi + 0x44]
mov edx, dword [edx + 0x7c]
pop ecx
call fcn.004b3efc
jmp 0x4c7de3
mov eax, edi
call fcn.004c5b58
test eax, eax
je 0x4c7de3
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0xc4]
cmp byte [eax + 8], 1
jne 0x4c7de3
cmp dword [edi + 0x44], 0
je 0x4c7de3
mov eax, dword [edi + 0x44]
test byte [eax + 0x1c], 8
jne 0x4c7de3
cmp dword [edi + 0x4c], 0
je 0x4c7de3
cmp dword [ebp + 4], 0
jne 0x4c7366
xor edx, edx
mov eax, dword [edi + 0x4c]
mov ecx, dword [eax]
call dword [ecx + 0x40]
xor edx, edx
mov eax, dword [edi + 0x4c]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov esi, dword [edi + 0x44]
mov eax, esi
mov edx, dword [0x43c148]
call fcn.00403fc4
test al, al
je 0x4c736a
mov eax, esi
mov edx, dword [0x43c148]
call fcn.00403fe8
mov ebp, eax
mov eax, ebp
call fcn.004436fc
dec eax
test eax, eax
jl 0x4c736a
inc eax
mov dword [esp + 4], eax
xor esi, esi
mov edx, esi
mov eax, ebp
call fcn.004436c0
mov edx, dword [0x43c148]
call fcn.00403fc4
test al, al
je 0x4c733b
mov edx, esi
mov eax, ebp
call fcn.004436c0
call fcn.00446cd0
test al, al
je 0x4c733b
mov edx, esi
mov eax, ebp
call fcn.004436c0
call fcn.004469cc
xor ecx, ecx
mov edx, 0x21
call fcn.004aecc0
jmp 0x4c735d
push 0
mov dx, 0x21
xor eax, eax
call fcn.00407dc0
push eax
mov edx, esi
mov eax, ebp
call fcn.004436c0
mov edx, 0xa100
pop ecx
call fcn.00441398
inc esi
dec dword [esp + 4]
jne 0x4c72f5
jmp 0x4c736a
mov byte [edi + 0x28], 0
mov byte [edi + 0x80], 1
jmp 0x4c7de3
mov eax, dword [edi + 0x44]
test eax, eax
je 0x4c7de3
cmp byte [eax + 0x57], 0
je 0x4c7de3
mov eax, edi
call fcn.004c5cfc
jmp 0x4c7de3
mov esi, dword [edi + 0x44]
mov eax, esi
mov edx, dword [0x43c148]
call fcn.00403fc4
test al, al
je 0x4c7de3
mov eax, dword [ebp + 4]
and eax, 0xffff
dec eax
sub eax, 2
jae 0x4c7de3
cmp word [ebp + 4], 1
jne 0x4c7de3
mov eax, esi
call fcn.004aa0d0
jmp 0x4c7de3
mov eax, dword [edi + 0x44]
mov edx, dword [0x43c148]
call fcn.00403fc4
test al, al
je 0x4c7de3
xor edx, edx
mov eax, edi
call fcn.004c65c8
test al, al
je 0x4c7de3
mov eax, dword [edi + 0x44]
mov si, 0xffb8
call fcn.00404034
test al, al
je 0x4c7de3
mov eax, dword [edi + 0x44]
cmp byte [eax + 0x1a4], 0
je 0x4c7de3
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x40], 0x64
jne 0x4c7457
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x78], 0x64
je 0x4c7de3
mov byte [edi + 0x80], 1
mov byte [edi + 0x54], 1
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x4c7473
bt dword [0x504b94], eax
jae 0x4c7de3
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 8], 1
jle 0x4c7de3
mov byte [edi + 0x80], 1
mov byte [esp], 0
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov eax, dword [eax + edx*4 + 0x44]
mov edx, dword [edi + 0x44]
cmp eax, dword [edx + 0x70]
je 0x4c74e4
cmp byte [edi + 0xd], 0
jne 0x4c74e4
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov edx, dword [eax + edx*4 + 0x44]
mov eax, dword [edi + 0x44]
call fcn.0044036c
mov byte [esp], 1
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov eax, dword [eax + edx*4 + 0x48]
mov edx, dword [edi + 0x44]
mov edx, dword [edx + 0x68]
cmp eax, dword [edx + 0x18]
je 0x4c752e
cmp byte [edi + 0xc], 0
jne 0x4c752e
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov edx, dword [eax + edx*4 + 0x48]
mov eax, dword [edi + 0x44]
mov eax, dword [eax + 0x68]
call fcn.00422f38
mov byte [esp], 1
cmp byte [esp], 0
je 0x4c7546
push 0xffffffffffffffff
push 0
mov eax, dword [edi + 0x44]
call fcn.004469cc
push eax
call sub.user32.dll_InvalidateRect
push 0
push 0
push 0x85
mov eax, dword [edi + 0x44]
call fcn.004469cc
push eax
call sub.user32.dll_SendMessageA
jmp 0x4c7de3
cmp dword [edi + 0x44], 0
je 0x4c7de3
xor edx, edx
mov eax, edi
call fcn.004c65c8
test al, al
je 0x4c7de3
mov eax, dword [edi + 0x44]
mov edx, dword [0x43c148]
call fcn.00403fc4
test al, al
je 0x4c7de3
mov eax, dword [edi + 0x44]
mov si, 0xffb8
call fcn.00404034
test al, al
je 0x4c7de3
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x40], 0x64
jne 0x4c75db
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x78], 0x64
je 0x4c7de3
mov byte [edi + 0x80], 1
mov byte [edi + 0x54], 0
mov byte [esp], 0
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x4c75fb
bt dword [0x504b94], eax
jae 0x4c769e
mov eax, edi
call fcn.004c57e8
test al, al
jne 0x4c769e
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov eax, dword [eax + edx*4 + 0xc]
mov edx, dword [edi + 0x44]
cmp eax, dword [edx + 0x70]
je 0x4c7654
cmp byte [edi + 0xd], 0
jne 0x4c7654
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov edx, dword [eax + edx*4 + 0xc]
mov eax, dword [edi + 0x44]
call fcn.0044036c
mov byte [esp], 1
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov eax, dword [eax + edx*4 + 0x10]
mov edx, dword [edi + 0x44]
mov edx, dword [edx + 0x68]
cmp eax, dword [edx + 0x18]
je 0x4c769e
cmp byte [edi + 0xc], 0
jne 0x4c769e
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov edx, dword [eax + edx*4 + 0x10]
mov eax, dword [edi + 0x44]
mov eax, dword [eax + 0x68]
call fcn.00422f38
mov byte [esp], 1
mov eax, dword [edi + 0x44]
cmp byte [eax + 0x57], 0
je 0x4c7de3
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x4c76bc
bt dword [0x504b94], eax
jae 0x4c7de3
mov byte [edi + 0x80], 1
cmp byte [esp], 0
je 0x4c76e1
push 0xffffffffffffffff
push 0
mov eax, dword [edi + 0x44]
call fcn.004469cc
push eax
call sub.user32.dll_InvalidateRect
push 0
push 0
push 0x85
mov eax, dword [edi + 0x44]
call fcn.004469cc
push eax
call sub.user32.dll_SendMessageA
jmp 0x4c7de3
mov byte [edi + 0x55], 0
mov byte [edi + 0x54], 0
mov esi, dword [edi + 0x44]
test esi, esi
je 0x4c7de3
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
jne 0x4c7de3
cmp dword [edi + 0x24], 0xffffffff
je 0x4c7de3
lea eax, [edi + 0x24]
call fcn.00485048
mov dword [edi + 0x24], 0xffffffff
jmp 0x4c7de3
mov eax, dword [edi + 0x44]
test byte [eax + 0x1c], 0x10
jne 0x4c7de3
xor edx, edx
mov eax, edi
call fcn.004c65c8
test al, al
je 0x4c7de3
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0xc4]
mov edx, 1
call fcn.004c3350
test al, al
jne 0x4c7de3
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x40], 0x64
jne 0x4c77ae
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x78], 0x64
je 0x4c7de3
mov esi, dword [edi + 0x44]
test esi, esi
je 0x4c79ae
mov eax, esi
mov edx, dword [0x43c148]
call fcn.00403fc4
test al, al
je 0x4c79ae
cmp dword [0x506e70], 0
je 0x4c79ae
mov eax, esi
call fcn.004436fc
dec eax
test eax, eax
jl 0x4c785a
inc eax
mov dword [esp + 4], eax
xor esi, esi
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.004436c0
mov edx, dword [0x5010a4]
call fcn.00403fc4
test al, al
je 0x4c7853
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.004436c0
cmp eax, dword [edi + 0x44]
je 0x4c7853
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.004436c0
cmp eax, dword [ebp + 8]
je 0x4c7853
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.004436c0
mov eax, dword [eax + 0x198]
cmp byte [eax + 0x55], 0
je 0x4c7853
push 0
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.004436c0
xor ecx, ecx
mov edx, 0xb014
call fcn.00441398
inc esi
dec dword [esp + 4]
jne 0x4c77ee
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x4c786b
bt dword [0x504b54], eax
jb 0x4c7871
mov byte [edi + 0x55], 1
mov eax, dword [edi + 0x44]
call fcn.004469cc
mov edx, eax
mov eax, dword [0x506e70]
call fcn.004c1c30
mov eax, dword [edi + 0x50]
mov edx, eax
cmp edx, 0xff
ja 0x4c7899
bt dword [0x504b74], edx
jb 0x4c78ae
add eax, 0xffffffa4
sub eax, 3
jb 0x4c78ae
xor ecx, ecx
xor edx, edx
mov eax, edi
call fcn.004c49ec
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x4c78bf
bt dword [0x504b94], eax
jae 0x4c7de3
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 8], 1
jle 0x4c7de3
mov byte [edi + 0x80], 1
mov byte [esp], 0
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov eax, dword [eax + edx*4 + 0x44]
mov edx, dword [edi + 0x44]
cmp eax, dword [edx + 0x70]
je 0x4c7930
cmp byte [edi + 0xd], 0
jne 0x4c7930
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov edx, dword [eax + edx*4 + 0x44]
mov eax, dword [edi + 0x44]
call fcn.0044036c
mov byte [esp], 1
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov eax, dword [eax + edx*4 + 0x48]
mov edx, dword [edi + 0x44]
mov edx, dword [edx + 0x68]
cmp eax, dword [edx + 0x18]
je 0x4c797a
cmp byte [edi + 0xc], 0
jne 0x4c797a
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov edx, dword [eax + edx*4 + 0x48]
mov eax, dword [edi + 0x44]
mov eax, dword [eax + 0x68]
call fcn.00422f38
mov byte [esp], 1
cmp byte [esp], 0
je 0x4c7992
push 0xffffffffffffffff
push 0
mov eax, dword [edi + 0x44]
call fcn.004469cc
push eax
call sub.user32.dll_InvalidateRect
push 0
push 0
push 0x85
mov eax, dword [edi + 0x44]
call fcn.004469cc
push eax
call sub.user32.dll_SendMessageA
jmp 0x4c7de3
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x4c79bf
bt dword [0x504b54], eax
jb 0x4c7de3
mov byte [edi + 0x55], 1
jmp 0x4c7de3
mov eax, dword [edi + 0x44]
test byte [eax + 0x1c], 0x10
jne 0x4c7de3
xor edx, edx
mov eax, edi
call fcn.004c65c8
test al, al
je 0x4c7de3
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0xc4]
mov edx, 1
call fcn.004c3350
test al, al
jne 0x4c7de3
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x4c7a1c
bt dword [0x504b54], eax
jb 0x4c7a22
mov byte [edi + 0x55], 0
mov eax, dword [edi + 0x50]
mov edx, eax
cmp edx, 0xff
ja 0x4c7a36
bt dword [0x504b74], edx
jb 0x4c7a55
add eax, 0xffffffa4
sub eax, 3
jb 0x4c7a55
cmp dword [edi + 0x24], 0xffffffff
je 0x4c7a55
lea eax, [edi + 0x24]
call fcn.00485048
mov dword [edi + 0x24], 0xffffffff
mov byte [esp], 0
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x4c7a6a
bt dword [0x504b94], eax
jae 0x4c7b41
mov eax, edi
call fcn.004c57e8
test al, al
jne 0x4c7b41
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x40], 0x64
jne 0x4c7ab3
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x78], 0x64
je 0x4c7b41
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov eax, dword [eax + edx*4 + 0xc]
mov edx, dword [edi + 0x44]
cmp eax, dword [edx + 0x70]
je 0x4c7af7
cmp byte [edi + 0xd], 0
jne 0x4c7af7
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov edx, dword [eax + edx*4 + 0xc]
mov eax, dword [edi + 0x44]
call fcn.0044036c
mov byte [esp], 1
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov eax, dword [eax + edx*4 + 0x10]
mov edx, dword [edi + 0x44]
mov edx, dword [edx + 0x68]
cmp eax, dword [edx + 0x18]
je 0x4c7b41
cmp byte [edi + 0xc], 0
jne 0x4c7b41
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
mov edx, dword [eax + edx*4 + 0x10]
mov eax, dword [edi + 0x44]
mov eax, dword [eax + 0x68]
call fcn.00422f38
mov byte [esp], 1
mov eax, dword [edi + 0x44]
cmp byte [eax + 0x57], 0
je 0x4c7de3
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x4c7b5f
bt dword [0x504b94], eax
jae 0x4c7de3
mov byte [edi + 0x80], 1
cmp byte [esp], 0
je 0x4c7b84
push 0xffffffffffffffff
push 0
mov eax, dword [edi + 0x44]
call fcn.004469cc
push eax
call sub.user32.dll_InvalidateRect
push 0
push 0
push 0x85
mov eax, dword [edi + 0x44]
call fcn.004469cc
push eax
call sub.user32.dll_SendMessageA
jmp 0x4c7de3
xor edx, edx
mov eax, edi
call fcn.004c65c8
test al, al
je 0x4c7de3
mov byte [edi + 0x80], 1
mov eax, dword [edi + 0x14]
mov al, byte [eax + 8]
sub al, 1
jne 0x4c7bc9
mov eax, edi
call fcn.004c5030
mov esi, dword [edi + 0x44]
mov eax, esi
mov edx, dword [0x5010a4]
call fcn.00403fc4
test al, al
je 0x4c7cb2
xor edx, edx
mov eax, edi
call fcn.004c65c8
test al, al
je 0x4c7d63
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
call fcn.00405efc
cmp eax, dword [edi + 0x34]
jle 0x4c7d63
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x24], 0
jle 0x4c7d63
mov eax, dword [edi + 0x44]
call fcn.004a7b08
test eax, eax
je 0x4c7d63
mov eax, dword [edi + 0x44]
call fcn.004a7b08
call fcn.004436fc
dec eax
test eax, eax
jl 0x4c7d63
inc eax
mov dword [esp + 4], eax
xor esi, esi
mov eax, dword [edi + 0x44]
call fcn.004a7b08
call fcn.004436fc
cmp esi, eax
jge 0x4c7ca6
mov eax, dword [edi + 0x44]
call fcn.004a7b08
mov edx, esi
call fcn.004436c0
test byte [eax + 0x1c], 8
jne 0x4c7ca6
push 0
mov dx, 0x14
mov ax, 1
call fcn.00407dc0
push eax
mov eax, dword [edi + 0x44]
call fcn.004a7b08
mov edx, esi
call fcn.004436c0
mov edx, 0xa100
pop ecx
call fcn.00441398
inc esi
dec dword [esp + 4]
jne 0x4c7c56
jmp 0x4c7d63
mov eax, esi
mov edx, dword [0x43c148]
call fcn.00403fc4
test al, al
je 0x4c7d63
xor edx, edx
mov eax, edi
call fcn.004c65c8
test al, al
je 0x4c7d63
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
call fcn.00405efc
cmp eax, dword [edi + 0x34]
jle 0x4c7d63
mov eax, edi
call fcn.004c5b58
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x24], 0
jle 0x4c7d63
mov eax, dword [edi + 0x44]
call fcn.004436fc
dec eax
test eax, eax
jl 0x4c7d63
inc eax
mov dword [esp + 4], eax
xor esi, esi
mov eax, dword [edi + 0x44]
call fcn.004436fc
cmp esi, eax
jge 0x4c7d5c
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.004436c0
test byte [eax + 0x1c], 8
jne 0x4c7d5c
push 0
mov dx, 0x14
mov ax, 1
call fcn.00407dc0
push eax
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.004436c0
mov edx, 0xa100
pop ecx
call fcn.00441398
inc esi
dec dword [esp + 4]
jne 0x4c7d1b
cmp dword [edi + 0x24], 0xffffffff
je 0x4c7de3
lea eax, [edi + 0x24]
call fcn.00485048
mov dword [edi + 0x24], 0xffffffff
jmp 0x4c7de3
xor edx, edx
mov eax, edi
call fcn.004c65c8
test al, al
je 0x4c7de3
mov eax, dword [edi + 0x14]
mov al, byte [eax + 8]
sub al, 1
jne 0x4c7d98
mov eax, edi
call fcn.004c5030
mov eax, edi
call fcn.004c6240
test al, al
je 0x4c7dce
mov byte [edi + 0x80], 1
mov esi, dword [edi + 0x44]
test esi, esi
je 0x4c7dce
push 0
mov dx, 0x14
mov ax, 1
call fcn.00407dc0
mov ecx, eax
mov edx, 0xa100
mov eax, esi
call fcn.00441398
cmp dword [edi + 0x24], 0xffffffff
je 0x4c7de3
lea eax, [edi + 0x24]
call fcn.00485048
mov dword [edi + 0x24], 0xffffffff
mov eax, ebx
pop ecx
pop edx
pop ebp
pop edi
pop esi
pop ebx
ret