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

Disassembly:
push 0xffffffffffffffff
push 0x4b5178
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.0042b020
lea ecx, [esp + 0x44]
call fcn.0042b020
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 0x42a254
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 0x42a201
mov dword [esp + 0x70], eax
jmp 0x42a208
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 0x42a522
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov esi, edx
cmp esi, 0xa
jl 0x42a297
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 0x42a29f
mov dword [esp + 0x74], edi
mov dword [esp + 0x14], edi
cmp esi, edi
jle 0x42a2d6
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.0042ac20
mov eax, 0x66666667
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
mov esi, edx
cmp esi, edi
jg 0x42a2a3
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 0x42a32e
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 0x42a446
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.0042b060
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 0x42a3d8
lea ecx, [esp + 0x30]
call fcn.0042af20
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x42a3e5
sub dword [esp + 0x4c], 4
mov eax, dword [esp + 0x5c]
dec eax
mov dword [esp + 0x5c], eax
jne 0x42a3f9
lea ecx, [esp + 0x30]
call fcn.0042af20
mov eax, dword [esp + 0x70]
test eax, eax
jne 0x42a405
xor ebx, ebx
jmp 0x42a408
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 0x42a38e
mov eax, dword [esp + 0x74]
test eax, eax
je 0x42a4e8
mov eax, dword [esp + 0x70]
test eax, eax
jne 0x42a460
mov dword [esp + 0x78], eax
jmp 0x42a467
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 0x42a4b3
xor ebx, ebx
jmp 0x42a4b6
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 0x42a4f4
xor ebx, ebx
jmp 0x42a4f7
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 0x42a5cb
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 0x42a54e
cmp esi, dword [esp + 0x38]
jne 0x42a5bf
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 0x42a5a9
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 0x42a5bf
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 0x42a536
mov ecx, dword [esp + 0x60]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x5c
ret 0xc