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

Disassembly:
push 0xffffffffffffffff
push 0x4b4508
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x50
mov al, byte [esp + 0x60]
push ebx
push ebp
mov ebp, ecx
push esi
push edi
lea ecx, [esp + 0x34]
mov dword [esp + 0x18], ebp
mov byte [esp + 0x30], al
call fcn.0042adf0
lea ecx, [esp + 0x44]
call fcn.0042adf0
xor edi, edi
mov dword [esp + 0x54], edi
mov dword [esp + 0x58], edi
mov dword [esp + 0x5c], edi
mov ecx, dword [esp + 0x74]
mov dword [esp + 0x68], edi
cmp ecx, 0x3e8
jge 0x42a024
mov esi, dword [esp + 0x78]
add ebp, 0x49c
push edi
mov ecx, ebp
mov ebx, dword [esi]
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetWidth_unsigned_int_
mov edi, dword [esi + 8]
mov ecx, dword [esi + 4]
sub edi, ebx
mov dword [esp + 0x78], ecx
sub edi, eax
push 0
shr edi, 1
mov ecx, ebp
add edi, ebx
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetHeight_unsigned_int_
mov ebx, dword [esi + 0xc]
mov edx, eax
mov eax, dword [esp + 0x78]
mov dword [esi], edi
sub ebx, eax
sub ebx, edx
shr ebx, 1
add ebx, eax
mov eax, dword [esp + 0x70]
test eax, eax
mov dword [esi + 4], ebx
jne 0x429fd1
mov dword [esp + 0x70], eax
jmp 0x429fd8
mov eax, dword [eax + 4]
mov dword [esp + 0x70], eax
push 0
push 0
mov ecx, ebp
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetHeight_unsigned_int_
push eax
push 0
mov ecx, ebp
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetWidth_unsigned_int_
mov ecx, dword [esp + 0x78]
push eax
push 0
push 0
push ebx
push edi
push ecx
mov ecx, ebp
call sub.CLRenderNewEngine.dll_public:_void___thiscall_CxImage::Draw_struct_HDC_____int__int__int__int__int__int__unsigned_int_
push 0
mov ecx, ebp
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetWidth_unsigned_int_
mov edi, dword [esi]
push 0
add eax, edi
mov ecx, ebp
mov dword [esi + 8], eax
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetHeight_unsigned_int_
add eax, dword [esi + 4]
mov dword [esi + 0xc], eax
jmp 0x42a2f2
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov esi, edx
cmp esi, 0xa
jl 0x42a067
mov eax, esi
mov ecx, 0xa
cdq
idiv ecx
mov eax, 0x66666667
mov dword [esp + 0x14], 1
mov dword [esp + 0x74], edx
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
mov esi, edx
jmp 0x42a06f
mov dword [esp + 0x74], edi
mov dword [esp + 0x14], edi
cmp esi, edi
jle 0x42a0a6
mov eax, esi
mov ecx, 0xa
cdq
idiv ecx
lea ecx, [esp + 0x30]
mov dword [esp + 0x10], edx
lea edx, [esp + 0x10]
push edx
call fcn.0042a9f0
mov eax, 0x66666667
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
mov esi, edx
cmp esi, edi
jg 0x42a073
mov ebx, dword [esp + 0x5c]
lea esi, [ebp + 0x49c]
push edi
mov ecx, esi
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetWidth_unsigned_int_
mov edi, eax
lea ecx, [ebp + 0x52c]
push 0
imul edi, ebx
mov dword [esp + 0x20], ecx
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetWidth_unsigned_int_
add edi, eax
mov eax, dword [esp + 0x74]
test eax, eax
mov dword [esp + 0x10], edi
je 0x42a0fe
push 0
lea ecx, [ebp + 0x508]
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetWidth_unsigned_int_
push 0
mov ecx, esi
mov ebx, eax
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetWidth_unsigned_int_
add eax, edi
add eax, ebx
mov dword [esp + 0x10], eax
mov edi, eax
mov ebx, dword [esp + 0x78]
push 0
mov ecx, dword [ebx]
mov eax, dword [ebx + 8]
sub eax, ecx
sub eax, edi
cdq
sub eax, edx
mov edi, eax
sar edi, 1
add edi, ecx
mov ecx, dword [ebx + 4]
mov dword [esp + 0x7c], ecx
mov ecx, esi
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetHeight_unsigned_int_
mov ebp, dword [ebx + 0xc]
mov edx, eax
mov eax, dword [esp + 0x78]
push 0
sub ebp, eax
mov ecx, esi
sub ebp, edx
mov dword [ebx], edi
shr ebp, 1
add ebp, eax
mov eax, dword [esp + 0x14]
add eax, edi
mov dword [ebx + 4], ebp
mov dword [ebx + 8], eax
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetHeight_unsigned_int_
add eax, dword [ebx + 4]
mov dword [ebx + 0xc], eax
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x42a216
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x50]
push 0xffffffffffffffff
mov dword [esp + 0x30], ecx
lea ecx, [esp + 0x24]
mov dword [esp + 0x28], edx
mov dword [esp + 0x2c], eax
call fcn.0042ae30
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x4c]
mov eax, dword [edx]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x44]
cmp ecx, eax
jne 0x42a1a8
lea ecx, [esp + 0x30]
call fcn.0042acf0
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x42a1b5
sub dword [esp + 0x4c], 4
mov eax, dword [esp + 0x5c]
dec eax
mov dword [esp + 0x5c], eax
jne 0x42a1c9
lea ecx, [esp + 0x30]
call fcn.0042acf0
mov eax, dword [esp + 0x70]
test eax, eax
jne 0x42a1d5
xor ebx, ebx
jmp 0x42a1d8
mov ebx, dword [eax + 4]
mov edx, dword [esp + 0x78]
mov ecx, esi
push edx
push 0
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetHeight_unsigned_int_
push eax
push 0
mov ecx, esi
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetWidth_unsigned_int_
push eax
push 0
push 0
push ebp
push edi
push ebx
mov ecx, esi
call sub.CLRenderNewEngine.dll_public:_void___thiscall_CxImage::Draw_struct_HDC_____int__int__int__int__int__int__unsigned_int_
push 0
mov ecx, esi
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetWidth_unsigned_int_
add edi, eax
mov eax, dword [esp + 0x5c]
test eax, eax
jne 0x42a15e
mov eax, dword [esp + 0x74]
test eax, eax
je 0x42a2b8
mov eax, dword [esp + 0x70]
test eax, eax
jne 0x42a230
mov dword [esp + 0x78], eax
jmp 0x42a237
mov eax, dword [eax + 4]
mov dword [esp + 0x78], eax
mov ecx, dword [esp + 0x18]
push 0
push 0
lea ebx, [ecx + 0x508]
mov ecx, esi
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetHeight_unsigned_int_
push eax
push 0
mov ecx, esi
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetWidth_unsigned_int_
mov edx, dword [esp + 0x80]
push eax
push 0
push 0
push ebp
push edi
push edx
mov ecx, ebx
call sub.CLRenderNewEngine.dll_public:_void___thiscall_CxImage::Draw_struct_HDC_____int__int__int__int__int__int__unsigned_int_
push 0
mov ecx, ebx
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetWidth_unsigned_int_
add edi, eax
mov eax, dword [esp + 0x70]
test eax, eax
jne 0x42a283
xor ebx, ebx
jmp 0x42a286
mov ebx, dword [eax + 4]
mov eax, dword [esp + 0x74]
mov ecx, esi
push eax
push 0
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetHeight_unsigned_int_
push eax
push 0
mov ecx, esi
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetWidth_unsigned_int_
push eax
push 0
push 0
push ebp
push edi
push ebx
mov ecx, esi
call sub.CLRenderNewEngine.dll_public:_void___thiscall_CxImage::Draw_struct_HDC_____int__int__int__int__int__int__unsigned_int_
push 0
mov ecx, esi
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetWidth_unsigned_int_
add edi, eax
mov eax, dword [esp + 0x70]
test eax, eax
jne 0x42a2c4
xor ebx, ebx
jmp 0x42a2c7
mov ebx, dword [eax + 4]
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
push ecx
push 0
mov ecx, esi
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetHeight_unsigned_int_
push eax
push 0
mov ecx, esi
call sub.CLRenderNewEngine.dll_public:_unsigned_int___thiscall_CxImage::GetWidth_unsigned_int_
push eax
push 0
push 0
push ebp
push edi
push ebx
mov ecx, esi
call sub.CLRenderNewEngine.dll_public:_void___thiscall_CxImage::Draw_struct_HDC_____int__int__int__int__int__int__unsigned_int_
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x42a39b
mov esi, dword [esp + 0x3c]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x5c]
add esi, 4
dec ecx
mov dword [esp + 0x3c], esi
mov dword [esp + 0x5c], ecx
je 0x42a31e
cmp esi, dword [esp + 0x38]
jne 0x42a38f
mov ecx, eax
add eax, 4
mov dword [esp + 0x40], eax
mov edx, dword [ecx]
push edx
call sub.MFC42.DLL_operatordelete
mov eax, dword [esp + 0x60]
add esp, 4
test eax, eax
jne 0x42a379
xor eax, eax
xor ecx, ecx
mov dword [esp + 0x34], eax
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x54]
xor edx, edx
xor esi, esi
push eax
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], edx
mov dword [esp + 0x44], esi
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], edx
mov dword [esp + 0x54], esi
call sub.MFC42.DLL_operatordelete
mov esi, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
add esp, 4
jmp 0x42a38f
mov eax, dword [esp + 0x40]
mov ecx, dword [eax]
mov esi, ecx
mov dword [esp + 0x34], ecx
lea edx, [ecx + 0x1000]
mov dword [esp + 0x38], edx
mov ecx, dword [esp + 0x5c]
test ecx, ecx
jne 0x42a306
mov ecx, dword [esp + 0x60]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x5c
ret 0xc