Function at 0x436ab0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x484257
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x14
push ebx
push esi
push edi
mov edi, dword [esp + 0x30]
xor ebx, ebx
test edi, edi
mov dword [esp + 0x1c], ebx
je 0x436cdf
lea eax, [esp + 0x14]
mov ecx, edi
push eax
call fcn.00438910
mov esi, dword [esp + 0x34]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 4]
mov edx, dword [esi]
sub ecx, eax
mov eax, dword [esi + 8]
sub eax, edx
mov edx, dword [esp + 0x14]
cmp eax, edx
jne 0x436b0e
cmp ecx, dword [esp + 0x18]
je 0x436cdf
mov eax, dword [esp + 0x38]
test eax, eax
jne 0x436b37
lea ecx, [esp + 0x34]
push edi
push ecx
call fcn.00439020
mov ebx, 1
add esp, 8
mov dword [esp + 0x1c], ebx
mov eax, dword [eax]
mov dword [esp + 0x28], 0
push eax
lea ecx, [esp + 0x10]
call sub.MFC42.DLL_CString::CString_2
test bl, 1
mov dword [esp + 0x28], 2
je 0x436b57
lea ecx, [esp + 0x34]
call fcn.0047e95e
mov edx, dword [esp + 0xc]
mov eax, dword [edx - 8]
test eax, eax
jne 0x436b75
push edi
lea eax, [esp + 0x10]
push str.PBM_p
push eax
call sub.MFC42.DLL_CString::Format
add esp, 0xc
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esi + 0xc]
mov ebx, dword [esi + 4]
mov edx, dword [esi + 8]
mov eax, dword [esi]
sub ecx, ebx
sub edx, eax
mov eax, dword [esp + 0xc]
push ecx
push edx
push eax
lea ecx, [esp + 0x3c]
push str._s::_dx_d
push ecx
mov byte [esp + 0x3c], 3
call sub.MFC42.DLL_CString::Format
mov eax, dword [esp + 0x44]
add esp, 0x14
lea edx, [esp + 0x10]
mov ecx, 0x4ae948
push edx
push eax
call sub.MFC42.DLL_CMapStringToPtr::Lookup
test eax, eax
je 0x436bfa
mov esi, dword [esp + 0x10]
lea ecx, [esp + 0x30]
mov byte [esp + 0x28], 2
call fcn.0047e95e
lea ecx, [esp + 0xc]
mov dword [esp + 0x28], 0xffffffff
call fcn.0047e95e
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
add esp, 0x20
ret
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 4]
mov ebx, dword [esi]
sub ecx, edx
mov edx, dword [esi + 8]
push ecx
mov ecx, dword [edi + 0xc]
sub edx, ebx
push edx
call fcn.00465ac0
test eax, eax
jne 0x436c4a
lea ecx, [esp + 0x30]
mov byte [esp + 0x28], 2
call fcn.0047e95e
lea ecx, [esp + 0xc]
mov dword [esp + 0x28], 0xffffffff
call fcn.0047e95e
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
add esp, 0x20
ret
push 1
push eax
mov eax, dword [esp + 0x38]
push eax
call fcn.00436870
mov esi, eax
mov eax, dword [edi + 0x14]
add esp, 0xc
or ebx, 0xffffffff
test esi, esi
je 0x436c82
cmp eax, ebx
je 0x436c7f
test eax, 0xff000000
je 0x436c7f
and eax, 0x1ff
mov dword [esi + 0x14], ebx
mov word [esi + 0x1c], ax
jmp 0x436c82
mov dword [esi + 0x14], eax
movsx eax, word [edi + 0x1c]
test esi, esi
je 0x436c8e
mov word [esi + 0x1c], ax
movsx eax, word [edi + 0x26]
movsx ecx, word [edi + 0x22]
movsx edx, word [edi + 0x20]
imul eax, ecx
movsx ecx, word [edi + 0x24]
imul ecx, edx
test esi, esi
je 0x436cb0
mov word [esi + 0x20], cx
mov word [esi + 0x22], ax
lea ecx, [esp + 0x30]
mov byte [esp + 0x28], 2
call fcn.0047e95e
lea ecx, [esp + 0xc]
mov dword [esp + 0x28], ebx
call fcn.0047e95e
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
add esp, 0x20
ret
mov ecx, dword [esp + 0x20]
mov eax, edi
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
add esp, 0x20
ret