Function at 0x510070
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 0x510d5b
mov eax, dword [ebp]
cmp eax, 0x210
jg 0x5100de
je 0x51030f
cmp eax, 8
jg 0x5100c0
je 0x5104da
sub eax, 3
je 0x510cf2
sub eax, 2
je 0x510b18
sub eax, 2
je 0x510350
jmp 0x510d5b
sub eax, 0x1d
je 0x510675
sub eax, 0x5e
je 0x510184
sub eax, 0xad
je 0x510132
jmp 0x510d5b
cmp eax, 0xb013
jg 0x510109
je 0x5106b5
sub eax, 0xa100
je 0x510122
sub eax, 0xf0b
je 0x5101ce
dec eax
je 0x510675
jmp 0x510d5b
sub eax, 0xb014
je 0x510946
sub eax, 5
je 0x5102ee
jmp 0x510d5b
mov eax, ebp
mov edx, edi
call fcn.0050f5e4
mov ebx, eax
jmp 0x510d5b
xor edx, edx
mov eax, edi
call fcn.0050f540
test al, al
je 0x510146
mov bl, 1
jmp 0x510d5b
call fcn.0042db34
test al, al
je 0x510d5b
mov eax, dword [edi + 0x44]
mov edx, dword [0x43e6b4]
call fcn.00403a7c
test al, al
je 0x510d5b
push 0
push 0
mov eax, dword [edi + 0x44]
call fcn.00449110
push eax
mov eax, dword [0x51db68]
mov eax, dword [eax]
call eax
jmp 0x510d5b
mov eax, dword [edi + 0x44]
test eax, eax
je 0x510d5b
cmp dword [eax + 0x7c], 0
je 0x510d5b
mov eax, edi
call fcn.0050ea70
test eax, eax
je 0x510d5b
mov eax, edi
call fcn.0050ea70
mov al, byte [eax + 0x3c]
push eax
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0x44]
mov edx, dword [edi + 0x44]
mov edx, dword [edx + 0x7c]
pop ecx
call fcn.004d9acc
jmp 0x510d5b
mov eax, edi
call fcn.0050ea70
test eax, eax
je 0x510d5b
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0xc4]
cmp byte [eax + 0xd], 1
jne 0x510d5b
cmp dword [edi + 0x44], 0
je 0x510d5b
mov eax, dword [edi + 0x44]
test byte [eax + 0x1c], 8
jne 0x510d5b
cmp dword [edi + 0x4c], 0
je 0x510d5b
cmp dword [ebp + 4], 0
jne 0x5102de
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 [0x43e6b4]
call fcn.00403a7c
test al, al
je 0x5102e2
mov eax, esi
mov edx, dword [0x43e6b4]
call fcn.00403aa0
mov ebp, eax
mov eax, ebp
call fcn.00445e40
dec eax
test eax, eax
jl 0x5102e2
inc eax
mov dword [esp + 4], eax
xor esi, esi
mov edx, esi
mov eax, ebp
call fcn.00445e04
mov edx, dword [0x43e6b4]
call fcn.00403a7c
test al, al
je 0x5102b3
mov edx, esi
mov eax, ebp
call fcn.00445e04
call fcn.00449414
test al, al
je 0x5102b3
mov edx, esi
mov eax, ebp
call fcn.00445e04
call fcn.00449110
xor ecx, ecx
mov edx, 0x21
call fcn.004d4800
jmp 0x5102d5
push 0
mov dx, 0x21
xor eax, eax
call fcn.00407950
push eax
mov edx, esi
mov eax, ebp
call fcn.00445e04
mov edx, 0xa100
pop ecx
call fcn.00443ac8
inc esi
dec dword [esp + 4]
jne 0x51026d
jmp 0x5102e2
mov byte [edi + 0x28], 0
mov byte [edi + 0x80], 1
jmp 0x510d5b
mov eax, dword [edi + 0x44]
test eax, eax
je 0x510d5b
cmp byte [eax + 0x57], 0
je 0x510d5b
mov eax, edi
call fcn.0050ec14
jmp 0x510d5b
mov esi, dword [edi + 0x44]
mov eax, esi
mov edx, dword [0x43e6b4]
call fcn.00403a7c
test al, al
je 0x510d5b
mov eax, dword [ebp + 4]
and eax, 0xffff
dec eax
sub eax, 2
jae 0x510d5b
cmp word [ebp + 4], 1
jne 0x510d5b
mov eax, esi
call fcn.004cfba4
jmp 0x510d5b
mov eax, dword [edi + 0x44]
mov edx, dword [0x43e6b4]
call fcn.00403a7c
test al, al
je 0x510d5b
xor edx, edx
mov eax, edi
call fcn.0050f540
test al, al
je 0x510d5b
mov eax, dword [edi + 0x44]
mov si, 0xffb8
call fcn.00403aec
test al, al
je 0x510d5b
mov eax, dword [edi + 0x44]
cmp byte [eax + 0x1a4], 0
je 0x510d5b
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x40], 0x64
jne 0x5103cf
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x78], 0x64
je 0x510d5b
mov byte [edi + 0x80], 1
mov byte [edi + 0x54], 1
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x5103eb
bt dword [0x51a264], eax
jae 0x510d5b
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 8], 1
jle 0x510d5b
mov byte [edi + 0x80], 1
mov byte [esp], 0
mov eax, edi
call fcn.0050ea70
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 0x51045c
cmp byte [edi + 0xd], 0
jne 0x51045c
mov eax, edi
call fcn.0050ea70
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.00442a90
mov byte [esp], 1
mov eax, edi
call fcn.0050ea70
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 0x5104a6
cmp byte [edi + 0xc], 0
jne 0x5104a6
mov eax, edi
call fcn.0050ea70
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.004234e8
mov byte [esp], 1
cmp byte [esp], 0
je 0x5104be
push 0xffffffffffffffff
push 0
mov eax, dword [edi + 0x44]
call fcn.00449110
push eax
call sub.user32.dll_InvalidateRect
push 0
push 0
push 0x85
mov eax, dword [edi + 0x44]
call fcn.00449110
push eax
call sub.user32.dll_SendMessageA
jmp 0x510d5b
cmp dword [edi + 0x44], 0
je 0x510d5b
xor edx, edx
mov eax, edi
call fcn.0050f540
test al, al
je 0x510d5b
mov eax, dword [edi + 0x44]
mov edx, dword [0x43e6b4]
call fcn.00403a7c
test al, al
je 0x510d5b
mov eax, dword [edi + 0x44]
mov si, 0xffb8
call fcn.00403aec
test al, al
je 0x510d5b
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x40], 0x64
jne 0x510553
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x78], 0x64
je 0x510d5b
mov byte [edi + 0x80], 1
mov byte [edi + 0x54], 0
mov byte [esp], 0
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x510573
bt dword [0x51a264], eax
jae 0x510616
mov eax, edi
call fcn.0050e700
test al, al
jne 0x510616
mov eax, edi
call fcn.0050ea70
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 0x5105cc
cmp byte [edi + 0xd], 0
jne 0x5105cc
mov eax, edi
call fcn.0050ea70
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.00442a90
mov byte [esp], 1
mov eax, edi
call fcn.0050ea70
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 0x510616
cmp byte [edi + 0xc], 0
jne 0x510616
mov eax, edi
call fcn.0050ea70
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.004234e8
mov byte [esp], 1
mov eax, dword [edi + 0x44]
cmp byte [eax + 0x57], 0
je 0x510d5b
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x510634
bt dword [0x51a264], eax
jae 0x510d5b
mov byte [edi + 0x80], 1
cmp byte [esp], 0
je 0x510659
push 0xffffffffffffffff
push 0
mov eax, dword [edi + 0x44]
call fcn.00449110
push eax
call sub.user32.dll_InvalidateRect
push 0
push 0
push 0x85
mov eax, dword [edi + 0x44]
call fcn.00449110
push eax
call sub.user32.dll_SendMessageA
jmp 0x510d5b
mov byte [edi + 0x55], 0
mov byte [edi + 0x54], 0
mov esi, dword [edi + 0x44]
test esi, esi
je 0x510d5b
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
jne 0x510d5b
cmp dword [edi + 0x24], 0xffffffff
je 0x510d5b
lea eax, [edi + 0x24]
call fcn.0049c3fc
mov dword [edi + 0x24], 0xffffffff
jmp 0x510d5b
mov eax, dword [edi + 0x44]
test byte [eax + 0x1c], 0x10
jne 0x510d5b
xor edx, edx
mov eax, edi
call fcn.0050f540
test al, al
je 0x510d5b
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0xc4]
mov edx, 1
call fcn.0050bf10
test al, al
jne 0x510d5b
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x40], 0x64
jne 0x510726
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x78], 0x64
je 0x510d5b
mov esi, dword [edi + 0x44]
test esi, esi
je 0x510926
mov eax, esi
mov edx, dword [0x43e6b4]
call fcn.00403a7c
test al, al
je 0x510926
cmp dword [0x55eff8], 0
je 0x510926
mov eax, esi
call fcn.00445e40
dec eax
test eax, eax
jl 0x5107d2
inc eax
mov dword [esp + 4], eax
xor esi, esi
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.00445e04
mov edx, dword [0x5190a0]
call fcn.00403a7c
test al, al
je 0x5107cb
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.00445e04
cmp eax, dword [edi + 0x44]
je 0x5107cb
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.00445e04
cmp eax, dword [ebp + 8]
je 0x5107cb
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.00445e04
mov eax, dword [eax + 0x198]
cmp byte [eax + 0x55], 0
je 0x5107cb
push 0
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.00445e04
xor ecx, ecx
mov edx, 0xb014
call fcn.00443ac8
inc esi
dec dword [esp + 4]
jne 0x510766
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x5107e3
bt dword [0x51a224], eax
jb 0x5107e9
mov byte [edi + 0x55], 1
mov eax, dword [edi + 0x44]
call fcn.00449110
mov edx, eax
mov eax, dword [0x55eff8]
call fcn.0050a794
mov eax, dword [edi + 0x50]
mov edx, eax
cmp edx, 0xff
ja 0x510811
bt dword [0x51a244], edx
jb 0x510826
add eax, 0xffffffa4
sub eax, 3
jb 0x510826
xor ecx, ecx
xor edx, edx
mov eax, edi
call fcn.0050d904
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x510837
bt dword [0x51a264], eax
jae 0x510d5b
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 8], 1
jle 0x510d5b
mov byte [edi + 0x80], 1
mov byte [esp], 0
mov eax, edi
call fcn.0050ea70
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 0x5108a8
cmp byte [edi + 0xd], 0
jne 0x5108a8
mov eax, edi
call fcn.0050ea70
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.00442a90
mov byte [esp], 1
mov eax, edi
call fcn.0050ea70
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 0x5108f2
cmp byte [edi + 0xc], 0
jne 0x5108f2
mov eax, edi
call fcn.0050ea70
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.004234e8
mov byte [esp], 1
cmp byte [esp], 0
je 0x51090a
push 0xffffffffffffffff
push 0
mov eax, dword [edi + 0x44]
call fcn.00449110
push eax
call sub.user32.dll_InvalidateRect
push 0
push 0
push 0x85
mov eax, dword [edi + 0x44]
call fcn.00449110
push eax
call sub.user32.dll_SendMessageA
jmp 0x510d5b
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x510937
bt dword [0x51a224], eax
jb 0x510d5b
mov byte [edi + 0x55], 1
jmp 0x510d5b
mov eax, dword [edi + 0x44]
test byte [eax + 0x1c], 0x10
jne 0x510d5b
xor edx, edx
mov eax, edi
call fcn.0050f540
test al, al
je 0x510d5b
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0xc4]
mov edx, 1
call fcn.0050bf10
test al, al
jne 0x510d5b
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x510994
bt dword [0x51a224], eax
jb 0x51099a
mov byte [edi + 0x55], 0
mov eax, dword [edi + 0x50]
mov edx, eax
cmp edx, 0xff
ja 0x5109ae
bt dword [0x51a244], edx
jb 0x5109cd
add eax, 0xffffffa4
sub eax, 3
jb 0x5109cd
cmp dword [edi + 0x24], 0xffffffff
je 0x5109cd
lea eax, [edi + 0x24]
call fcn.0049c3fc
mov dword [edi + 0x24], 0xffffffff
mov byte [esp], 0
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x5109e2
bt dword [0x51a264], eax
jae 0x510ab9
mov eax, edi
call fcn.0050e700
test al, al
jne 0x510ab9
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x40], 0x64
jne 0x510a2b
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x78], 0x64
je 0x510ab9
mov eax, edi
call fcn.0050ea70
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 0x510a6f
cmp byte [edi + 0xd], 0
jne 0x510a6f
mov eax, edi
call fcn.0050ea70
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.00442a90
mov byte [esp], 1
mov eax, edi
call fcn.0050ea70
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 0x510ab9
cmp byte [edi + 0xc], 0
jne 0x510ab9
mov eax, edi
call fcn.0050ea70
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.004234e8
mov byte [esp], 1
mov eax, dword [edi + 0x44]
cmp byte [eax + 0x57], 0
je 0x510d5b
mov eax, dword [edi + 0x50]
cmp eax, 0xff
ja 0x510ad7
bt dword [0x51a264], eax
jae 0x510d5b
mov byte [edi + 0x80], 1
cmp byte [esp], 0
je 0x510afc
push 0xffffffffffffffff
push 0
mov eax, dword [edi + 0x44]
call fcn.00449110
push eax
call sub.user32.dll_InvalidateRect
push 0
push 0
push 0x85
mov eax, dword [edi + 0x44]
call fcn.00449110
push eax
call sub.user32.dll_SendMessageA
jmp 0x510d5b
xor edx, edx
mov eax, edi
call fcn.0050f540
test al, al
je 0x510d5b
mov byte [edi + 0x80], 1
mov eax, dword [edi + 0x14]
mov al, byte [eax + 8]
sub al, 1
jne 0x510b41
mov eax, edi
call fcn.0050df48
mov esi, dword [edi + 0x44]
mov eax, esi
mov edx, dword [0x5190a0]
call fcn.00403a7c
test al, al
je 0x510c2a
xor edx, edx
mov eax, edi
call fcn.0050f540
test al, al
je 0x510cdb
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0x7894]
call fcn.004059b4
cmp eax, dword [edi + 0x34]
jle 0x510cdb
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x24], 0
jle 0x510cdb
mov eax, dword [edi + 0x44]
call fcn.004c0398
test eax, eax
je 0x510cdb
mov eax, dword [edi + 0x44]
call fcn.004c0398
call fcn.00445e40
dec eax
test eax, eax
jl 0x510cdb
inc eax
mov dword [esp + 4], eax
xor esi, esi
mov eax, dword [edi + 0x44]
call fcn.004c0398
call fcn.00445e40
cmp esi, eax
jge 0x510c1e
mov eax, dword [edi + 0x44]
call fcn.004c0398
mov edx, esi
call fcn.00445e04
test byte [eax + 0x1c], 8
jne 0x510c1e
push 0
mov dx, 0x14
mov ax, 1
call fcn.00407950
push eax
mov eax, dword [edi + 0x44]
call fcn.004c0398
mov edx, esi
call fcn.00445e04
mov edx, 0xa100
pop ecx
call fcn.00443ac8
inc esi
dec dword [esp + 4]
jne 0x510bce
jmp 0x510cdb
mov eax, esi
mov edx, dword [0x43e6b4]
call fcn.00403a7c
test al, al
je 0x510cdb
xor edx, edx
mov eax, edi
call fcn.0050f540
test al, al
je 0x510cdb
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0x7894]
call fcn.004059b4
cmp eax, dword [edi + 0x34]
jle 0x510cdb
mov eax, edi
call fcn.0050ea70
mov eax, dword [eax + 0x7894]
imul edx, dword [edi + 0x34], 0x4b
cmp dword [eax + edx*4 + 0x24], 0
jle 0x510cdb
mov eax, dword [edi + 0x44]
call fcn.00445e40
dec eax
test eax, eax
jl 0x510cdb
inc eax
mov dword [esp + 4], eax
xor esi, esi
mov eax, dword [edi + 0x44]
call fcn.00445e40
cmp esi, eax
jge 0x510cd4
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.00445e04
test byte [eax + 0x1c], 8
jne 0x510cd4
push 0
mov dx, 0x14
mov ax, 1
call fcn.00407950
push eax
mov edx, esi
mov eax, dword [edi + 0x44]
call fcn.00445e04
mov edx, 0xa100
pop ecx
call fcn.00443ac8
inc esi
dec dword [esp + 4]
jne 0x510c93
cmp dword [edi + 0x24], 0xffffffff
je 0x510d5b
lea eax, [edi + 0x24]
call fcn.0049c3fc
mov dword [edi + 0x24], 0xffffffff
jmp 0x510d5b
xor edx, edx
mov eax, edi
call fcn.0050f540
test al, al
je 0x510d5b
mov eax, dword [edi + 0x14]
mov al, byte [eax + 8]
sub al, 1
jne 0x510d10
mov eax, edi
call fcn.0050df48
mov eax, edi
call fcn.0050f158
test al, al
je 0x510d46
mov byte [edi + 0x80], 1
mov esi, dword [edi + 0x44]
test esi, esi
je 0x510d46
push 0
mov dx, 0x14
mov ax, 1
call fcn.00407950
mov ecx, eax
mov edx, 0xa100
mov eax, esi
call fcn.00443ac8
cmp dword [edi + 0x24], 0xffffffff
je 0x510d5b
lea eax, [edi + 0x24]
call fcn.0049c3fc
mov dword [edi + 0x24], 0xffffffff
mov eax, ebx
pop ecx
pop edx
pop ebp
pop edi
pop esi
pop ebx
ret