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

Disassembly:
sub esp, 0x54
mov eax, dword [esp + 0x70]
push ebx
push ebp
push esi
push edi
mov edi, ecx
xor ebp, ebp
xor ecx, ecx
xor edx, edx
xor esi, esi
xor ebx, ebx
cmp eax, ebp
mov dword [esp + 0x18], edi
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], ebx
jne 0x48e5ea
mov eax, dword [esp + 0x68]
mov edi, eax
mov dword [edi], ecx
mov dword [edi + 4], edx
mov dword [edi + 8], esi
mov dword [edi + 0xc], ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x54
ret 0x24
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 4]
mov edx, dword [eax + 8]
mov eax, dword [esp + 0x70]
mov dword [esp + 0x4c], ecx
push eax
lea ecx, [esp + 0x48]
mov dword [esp + 0x54], edx
push ecx
lea edx, [esp + 0x4c]
push edx
mov dword [esp + 0x50], ebp
mov dword [esp + 0x54], ebp
call dword [sym.imp.USER32.dll_IntersectRect]
mov ecx, dword [esp + 0x78]
mov eax, dword [edi + 0x74]
mov edx, dword [edi + 0x78]
mov ebx, dword [edi + 0x64]
lea esi, [eax + ecx + 4]
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x44]
lea eax, [edx + eax + 4]
mov edx, dword [edi + 0x68]
sar esi, 3
sar eax, 3
cmp esi, ecx
mov dword [esp + 0x7c], eax
mov dword [esp + 0x78], ebx
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ebp
mov dword [esp + 0x70], ebp
jge 0x48e669
mov ebp, ecx
sub ebp, esi
sub esi, ecx
add ebx, esi
mov dword [esp + 0x14], ebp
mov dword [esp + 0x78], ebx
mov esi, ecx
mov ecx, dword [esp + 0x48]
cmp eax, ecx
jge 0x48e687
mov ebp, ecx
sub ebp, eax
sub eax, ecx
add edx, eax
mov eax, ecx
mov dword [esp + 0x70], ebp
mov dword [esp + 0x10], edx
mov dword [esp + 0x7c], eax
mov ecx, dword [esp + 0x4c]
lea ebp, [ebx + esi]
cmp ebp, ecx
jle 0x48e69a
sub ecx, esi
mov ebx, ecx
mov dword [esp + 0x78], ebx
mov ecx, dword [esp + 0x50]
lea ebp, [edx + eax]
cmp ebp, ecx
jle 0x48e6ad
sub ecx, eax
mov edx, ecx
mov dword [esp + 0x10], edx
test ebx, ebx
jle 0x48f120
test edx, edx
jle 0x48f120
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x10]
add ecx, eax
push ecx
lea edx, [ebx + esi]
push edx
push eax
push esi
lea eax, [esp + 0x44]
push eax
call dword [sym.imp.USER32.dll_SetRect]
mov ebp, dword [esp + 0x6c]
mov ecx, dword [ebp + 4]
mov edx, dword [ebp + 8]
xor eax, eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
lea eax, [esp + 0x54]
mov dword [esp + 0x5c], ecx
push eax
lea ecx, [esp + 0x38]
mov dword [esp + 0x64], edx
push ecx
lea edx, [esp + 0x3c]
push edx
call dword [sym.imp.USER32.dll_IntersectRect]
mov eax, dword [edi + 0x64]
imul eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x14]
mov ebp, dword [ebp + 4]
add eax, ecx
mov ecx, dword [edi + 0x60]
lea edi, [ecx + eax*2]
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x74]
imul ebp, eax
add ebp, esi
add ebp, ecx
mov ecx, dword [esp + 0x6c]
mov edx, dword [ecx + 0xc]
imul edx, eax
lea eax, [edx + esi*4]
mov edx, dword [ecx + 0x14]
mov ecx, dword [esp + 0x74]
add eax, edx
test ecx, ecx
mov ecx, dword [esp + 0x80]
mov edx, dword [ecx + 4]
mov dword [esp + 0x70], edi
mov dword [esp + 0x7c], ebp
jne 0x48ec17
cmp edx, 0xffffffff
jne 0x48e994
mov ebp, dword [ecx]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x14], ebp
mov dword [esp + 0x1c], ecx
jmp 0x48e780
mov cl, byte [esp + 0x84]
test cl, cl
mov cl, byte [esp + 0x88]
je 0x48e883
test cl, cl
je 0x48e7a3
lea edx, [edi + 1]
mov dword [esp + 0x7c], edx
jmp 0x48e7a7
mov dword [esp + 0x7c], edi
xor ecx, ecx
test ebx, ebx
mov dword [esp + 0x20], ecx
jle 0x48e969
mov esi, ebp
mov edi, ebp
shr esi, 0x18
and edi, 0xff00ff
mov ebx, ebp
and ebx, 0xff00
mov dword [esp + 0x74], esi
mov dword [esp + 0x80], edi
mov dword [esp + 0x10], ebx
jmp 0x48e7f0
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x80]
mov esi, dword [esp + 0x74]
lea ebx, [ebx]
mov edx, dword [esp + 0x7c]
movzx edx, byte [edx + ecx*2]
mov ecx, dword [eax + ecx*4]
imul edx, esi
mov ebp, ecx
and ebp, 0xff00
shr edx, 6
and edx, 0xff
imul ebx, edx
imul edi, edx
mov esi, 0x100
sub esi, edx
imul ebp, esi
add ebp, ebx
mov ebx, ecx
and ebx, 0xffff00ff
imul ebx, esi
add ebx, edi
xor ebp, ebx
mov ebx, dword [esp + 0x80]
mov edi, ecx
imul ebx, edx
and edi, 0xff00ff
shr ecx, 8
imul edi, esi
and ecx, 0xff0000
imul ecx, esi
and ebp, 0xff0000
add edi, ebx
mov ebx, dword [esp + 0x78]
xor ebp, edi
and ecx, 0xff000000
shr ebp, 8
or ebp, ecx
mov ecx, dword [esp + 0x20]
mov dword [eax + ecx*4], ebp
inc ecx
cmp ecx, ebx
mov dword [esp + 0x20], ecx
jl 0x48e7db
jmp 0x48e961
test cl, cl
je 0x48e969
xor edx, edx
test ebx, ebx
mov dword [esp + 0x7c], edx
jle 0x48e969
mov esi, ebp
mov ebx, ebp
shr esi, 0x18
and ebx, 0xff00ff
and ebp, 0xff00
mov dword [esp + 0x74], esi
mov dword [esp + 0x80], ebx
mov dword [esp + 0x10], ebp
jmp 0x48e8d0
mov ebp, dword [esp + 0x10]
mov ebx, dword [esp + 0x80]
mov esi, dword [esp + 0x74]
mov edi, dword [esp + 0x70]
movzx ecx, byte [edi + edx*2 + 1]
movzx edi, byte [edi + edx*2]
mov edx, dword [eax + edx*4]
sub ecx, edi
imul ecx, esi
mov edi, edx
and edi, 0xff00
shr ecx, 6
and ecx, 0xff
imul ebp, ecx
imul ebx, ecx
mov esi, 0x100
sub esi, ecx
imul edi, esi
add edi, ebp
mov ebp, edx
and ebp, 0xffff00ff
imul ebp, esi
add ebp, ebx
xor edi, ebp
mov ebp, dword [esp + 0x80]
mov ebx, edx
imul ebp, ecx
and ebx, 0xff00ff
shr edx, 8
imul ebx, esi
and edx, 0xff0000
imul edx, esi
and edi, 0xff0000
add ebx, ebp
xor edi, ebx
mov ebx, dword [esp + 0x78]
and edx, 0xff000000
shr edi, 8
or edi, edx
mov edx, dword [esp + 0x7c]
mov dword [eax + edx*4], edi
inc edx
cmp edx, ebx
mov dword [esp + 0x7c], edx
jl 0x48e8bd
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x70]
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + 0x64]
mov ecx, dword [esp + 0x6c]
lea edi, [edi + edx*2]
mov edx, dword [ecx + 0xc]
mov ecx, dword [esp + 0x1c]
add eax, edx
dec ecx
mov dword [esp + 0x70], edi
mov dword [esp + 0x1c], ecx
jne 0x48e780
jmp 0x48f120
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
mov dword [esp + 0x28], edx
mov cl, byte [esp + 0x84]
mov ebp, dword [esp + 0x80]
test cl, cl
mov cl, byte [esp + 0x88]
mov dword [esp + 0x7c], ebp
je 0x48eada
test cl, cl
je 0x48e9ce
lea ecx, [edi + 1]
mov dword [esp + 0x20], ecx
jmp 0x48e9d2
mov dword [esp + 0x20], edi
xor ecx, ecx
test ebx, ebx
mov dword [esp + 0x10], ecx
jle 0x48ebec
mov edx, dword [esp + 0x80]
add edx, 4
mov dword [esp + 0x74], edx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x24], edx
jmp 0x48ea00
mov ebp, dword [esp + 0x7c]
lea esp, [esp]
mov edi, dword [esp + 0x74]
cmp edx, dword [edi]
jl 0x48ea20
add ebp, 8
mov edi, dword [ebp + 4]
cmp edx, edi
lea esi, [ebp + 4]
mov dword [esp + 0x74], esi
jge 0x48ea08
mov esi, dword [ebp - 8]
mov dword [esp + 0x7c], ebp
mov edx, dword [esp + 0x20]
movzx edx, byte [edx + ecx*2]
mov ecx, dword [eax + ecx*4]
mov edi, esi
shr edi, 0x18
imul edx, edi
shr edx, 6
and edx, 0xff
mov ebx, ecx
and ebx, 0xffff00ff
mov edi, 0x100
sub edi, edx
imul ebx, edi
mov ebp, esi
and ebp, 0xffff00ff
imul ebp, edx
add ebx, ebp
mov ebp, ecx
and ebp, 0xff00
imul ebp, edi
mov dword [esp + 0x1c], edi
mov edi, esi
and edi, 0xff00
imul edi, edx
add ebp, edi
xor ebx, ebp
mov edi, ecx
and edi, 0xff00ff
imul edi, dword [esp + 0x1c]
shr ecx, 8
mov ebp, esi
and ebp, 0xff00ff
imul ebp, edx
mov edx, dword [esp + 0x24]
and ecx, 0xff0000
imul ecx, dword [esp + 0x1c]
and ebx, 0xff0000
add edi, ebp
xor ebx, edi
shr ebx, 8
and ecx, 0xff000000
or ebx, ecx
mov ecx, dword [esp + 0x10]
mov dword [eax + ecx*4], ebx
mov ebx, dword [esp + 0x78]
inc ecx
inc edx
cmp ecx, ebx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x24], edx
jl 0x48e9f8
jmp 0x48ebe8
test cl, cl
je 0x48ebec
xor edx, edx
test ebx, ebx
mov dword [esp + 0x20], edx
jle 0x48ebec
mov ecx, dword [esp + 0x80]
add ecx, 4
mov dword [esp + 0x74], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x1c], ecx
jmp 0x48eb10
mov edi, dword [esp + 0x70]
mov ebp, dword [esp + 0x7c]
mov ebx, dword [esp + 0x74]
cmp ecx, dword [ebx]
jl 0x48eb30
add ebp, 8
mov ebx, dword [ebp + 4]
cmp ecx, ebx
lea esi, [ebp + 4]
mov dword [esp + 0x74], esi
jge 0x48eb18
mov esi, dword [ebp - 8]
mov dword [esp + 0x7c], ebp
movzx ecx, byte [edi + edx*2 + 1]
movzx edi, byte [edi + edx*2]
mov edx, dword [eax + edx*4]
sub ecx, edi
mov edi, esi
shr edi, 0x18
imul ecx, edi
shr ecx, 6
and ecx, 0xff
mov ebx, edx
and ebx, 0xffff00ff
mov edi, 0x100
sub edi, ecx
imul ebx, edi
mov ebp, esi
and ebp, 0xffff00ff
imul ebp, ecx
add ebx, ebp
mov ebp, edx
and ebp, 0xff00
imul ebp, edi
mov dword [esp + 0x24], edi
mov edi, esi
and edi, 0xff00
imul edi, ecx
add ebp, edi
xor ebx, ebp
mov edi, edx
and edi, 0xff00ff
imul edi, dword [esp + 0x24]
shr edx, 8
mov ebp, esi
and ebp, 0xff00ff
imul ebp, ecx
mov ecx, dword [esp + 0x1c]
and edx, 0xff0000
imul edx, dword [esp + 0x24]
and ebx, 0xff0000
add edi, ebp
xor ebx, edi
shr ebx, 8
and edx, 0xff000000
or ebx, edx
mov edx, dword [esp + 0x20]
mov dword [eax + edx*4], ebx
mov ebx, dword [esp + 0x78]
inc edx
inc ecx
cmp edx, ebx
mov dword [esp + 0x20], edx
mov dword [esp + 0x1c], ecx
jl 0x48eb08
mov edi, dword [esp + 0x70]
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + 0x64]
mov ecx, dword [esp + 0x6c]
lea edi, [edi + edx*2]
mov edx, dword [ecx + 0xc]
mov ecx, dword [esp + 0x28]
add eax, edx
dec ecx
mov dword [esp + 0x70], edi
mov dword [esp + 0x28], ecx
jne 0x48e9a0
jmp 0x48f120
cmp edx, 0xffffffff
jne 0x48ee6a
mov ecx, dword [ecx]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x20], edx
mov edi, edi
mov dl, byte [esp + 0x84]
test dl, dl
mov dl, byte [esp + 0x88]
je 0x48ed3e
test dl, dl
je 0x48ec53
lea edx, [edi + 1]
mov dword [esp + 0x28], edx
jmp 0x48ec57
mov dword [esp + 0x28], edi
xor edx, edx
test ebx, ebx
mov dword [esp + 0x24], edx
jle 0x48ee38
mov esi, ecx
mov edi, ecx
shr esi, 0x18
and edi, 0xff00ff
mov ebx, ecx
and ebx, 0xff00
mov dword [esp + 0x74], esi
mov dword [esp + 0x80], edi
mov dword [esp + 0x10], ebx
jmp 0x48eca0
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x80]
mov esi, dword [esp + 0x74]
lea ebx, [ebx]
movzx ebp, byte [edx + ebp]
mov ecx, dword [esp + 0x28]
movzx ecx, byte [ecx + edx*2]
mov edx, dword [eax + edx*4]
imul ecx, ebp
imul ecx, esi
mov ebp, edx
and ebp, 0xff00
shr ecx, 0xc
and ecx, 0xff
imul ebx, ecx
imul edi, ecx
mov esi, 0x100
sub esi, ecx
imul ebp, esi
add ebp, ebx
mov ebx, edx
and ebx, 0xffff00ff
imul ebx, esi
add ebx, edi
xor ebp, ebx
mov ebx, dword [esp + 0x80]
mov edi, edx
imul ebx, ecx
and edi, 0xff00ff
shr edx, 8
imul edi, esi
and edx, 0xff0000
imul edx, esi
and ebp, 0xff0000
add edi, ebx
mov ebx, dword [esp + 0x78]
xor ebp, edi
shr ebp, 8
and edx, 0xff000000
or ebp, edx
mov edx, dword [esp + 0x24]
mov dword [eax + edx*4], ebp
mov ebp, dword [esp + 0x7c]
inc edx
cmp edx, ebx
mov dword [esp + 0x24], edx
jl 0x48ec8b
jmp 0x48ee30
test dl, dl
je 0x48ee38
xor edx, edx
test ebx, ebx
mov dword [esp + 0x28], edx
jle 0x48ee38
mov esi, ecx
mov ebx, ecx
shr esi, 0x18
and ebx, 0xff00ff
and ecx, 0xff00
mov dword [esp + 0x74], esi
mov dword [esp + 0x80], ebx
mov dword [esp + 0x10], ecx
jmp 0x48ed90
mov edi, dword [esp + 0x70]
mov ebx, dword [esp + 0x80]
mov esi, dword [esp + 0x74]
jmp 0x48ed90
movzx ecx, byte [edi + edx*2 + 1]
movzx edi, byte [edi + edx*2]
sub ecx, edi
movzx edi, byte [edx + ebp]
mov edx, dword [eax + edx*4]
imul ecx, edi
mov ebp, dword [esp + 0x10]
imul ecx, esi
mov edi, edx
and edi, 0xff00
shr ecx, 0xc
and ecx, 0xff
imul ebp, ecx
imul ebx, ecx
mov esi, 0x100
sub esi, ecx
imul edi, esi
add edi, ebp
mov ebp, edx
and ebp, 0xffff00ff
imul ebp, esi
add ebp, ebx
xor edi, ebp
mov ebp, dword [esp + 0x80]
mov ebx, edx
imul ebp, ecx
and ebx, 0xff00ff
shr edx, 8
imul ebx, esi
and edx, 0xff0000
imul edx, esi
and edi, 0xff0000
add ebx, ebp
mov ebp, dword [esp + 0x7c]
xor edi, ebx
mov ebx, dword [esp + 0x78]
and edx, 0xff000000
shr edi, 8
or edi, edx
mov edx, dword [esp + 0x28]
mov dword [eax + edx*4], edi
inc edx
cmp edx, ebx
mov dword [esp + 0x28], edx
jl 0x48ed78
mov edi, dword [esp + 0x70]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov edx, dword [edx + 0x64]
lea edi, [edi + edx*2]
mov edx, dword [esp + 0x6c]
add ebp, dword [edx + 4]
mov esi, dword [edx + 0xc]
mov edx, dword [esp + 0x20]
add eax, esi
dec edx
mov dword [esp + 0x70], edi
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x20], edx
jne 0x48ec30
jmp 0x48f120
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
mov dword [esp + 0x30], ecx
jmp 0x48ee80
mov dl, byte [esp + 0x84]
mov ecx, dword [esp + 0x80]
test dl, dl
mov dl, byte [esp + 0x88]
mov dword [esp + 0x10], ecx
je 0x48efc9
test dl, dl
je 0x48eeae
lea edx, [edi + 1]
mov dword [esp + 0x28], edx
jmp 0x48eeb2
mov dword [esp + 0x28], edi
xor edx, edx
test ebx, ebx
mov dword [esp + 0x20], edx
jle 0x48f0f3
mov edi, dword [esp + 0x80]
add edi, 4
mov dword [esp + 0x74], edi
mov edi, dword [esp + 0x14]
sub ebp, edi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x1c], ebp
jmp 0x48eee6
mov ecx, dword [esp + 0x10]
mov ebp, dword [esp + 0x1c]
mov ebx, dword [esp + 0x74]
cmp edi, dword [ebx]
jl 0x48ef08
mov edi, edi
add ecx, 8
mov ebx, dword [ecx + 4]
cmp edi, ebx
lea esi, [ecx + 4]
mov dword [esp + 0x74], esi
jge 0x48eef0
mov esi, dword [ecx - 8]
mov dword [esp + 0x10], ecx
movzx edi, byte [edi + ebp]
mov ecx, dword [esp + 0x28]
movzx ecx, byte [ecx + edx*2]
mov edx, dword [eax + edx*4]
imul ecx, edi
mov edi, esi
shr edi, 0x18
imul ecx, edi
mov ebx, edx
and ebx, 0xffff00ff
shr ecx, 0xc
and ecx, 0xff
mov edi, 0x100
sub edi, ecx
imul ebx, edi
mov ebp, esi
and ebp, 0xffff00ff
imul ebp, ecx
add ebx, ebp
mov ebp, edx
mov dword [esp + 0x24], edi
and ebp, 0xff00
imul ebp, edi
mov edi, esi
and edi, 0xff00
imul edi, ecx
add ebp, edi
xor ebx, ebp
mov edi, edx
and edi, 0xff00ff
imul edi, dword [esp + 0x24]
shr edx, 8
mov ebp, esi
and ebp, 0xff00ff
imul ebp, ecx
and edx, 0xff0000
imul edx, dword [esp + 0x24]
and ebx, 0xff0000
add edi, ebp
xor ebx, edi
mov edi, dword [esp + 0x2c]
shr ebx, 8
and edx, 0xff000000
or ebx, edx
mov edx, dword [esp + 0x20]
mov dword [eax + edx*4], ebx
mov ebx, dword [esp + 0x78]
inc edx
inc edi
cmp edx, ebx
mov dword [esp + 0x20], edx
mov dword [esp + 0x2c], edi
jl 0x48eede
jmp 0x48f0eb
test dl, dl
je 0x48f0f3
xor edx, edx
test ebx, ebx
mov dword [esp + 0x28], edx
jle 0x48f0f3
mov ebx, dword [esp + 0x80]
add ebx, 4
mov dword [esp + 0x74], ebx
mov ebx, dword [esp + 0x14]
sub ebp, ebx
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x20], ebx
mov ebp, ebx
jmp 0x48f007
mov edi, dword [esp + 0x70]
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x74]
cmp ebp, dword [ebx]
jl 0x48f028
nop
add ecx, 8
mov ebx, dword [ecx + 4]
cmp ebp, ebx
lea esi, [ecx + 4]
mov dword [esp + 0x74], esi
jge 0x48f010
mov esi, dword [ecx - 8]
mov dword [esp + 0x10], ecx
movzx ecx, byte [edi + edx*2 + 1]
movzx edi, byte [edi + edx*2]
sub ecx, edi
mov edi, dword [esp + 0x1c]
movzx edi, byte [edi + ebp]
mov edx, dword [eax + edx*4]
imul ecx, edi
mov edi, esi
shr edi, 0x18
imul ecx, edi
mov ebx, edx
and ebx, 0xffff00ff
shr ecx, 0xc
and ecx, 0xff
mov edi, 0x100
sub edi, ecx
imul ebx, edi
mov ebp, esi
and ebp, 0xffff00ff
imul ebp, ecx
add ebx, ebp
mov ebp, edx
and ebp, 0xff00
imul ebp, edi
mov dword [esp + 0x2c], edi
mov edi, esi
and edi, 0xff00
imul edi, ecx
add ebp, edi
xor ebx, ebp
mov edi, edx
and edi, 0xff00ff
imul edi, dword [esp + 0x2c]
shr edx, 8
mov ebp, esi
and ebp, 0xff00ff
imul ebp, ecx
and edx, 0xff0000
imul edx, dword [esp + 0x2c]
and ebx, 0xff0000
add edi, ebp
mov ebp, dword [esp + 0x20]
xor ebx, edi
shr ebx, 8
and edx, 0xff000000
or ebx, edx
mov edx, dword [esp + 0x28]
mov dword [eax + edx*4], ebx
mov ebx, dword [esp + 0x78]
inc edx
inc ebp
cmp edx, ebx
mov dword [esp + 0x28], edx
mov dword [esp + 0x20], ebp
jl 0x48efff
mov edi, dword [esp + 0x70]
mov ebp, dword [esp + 0x7c]
mov edx, dword [esp + 0x18]
mov ecx, dword [edx + 0x64]
lea edi, [edi + ecx*2]
mov ecx, dword [esp + 0x6c]
add ebp, dword [ecx + 4]
mov edx, dword [ecx + 0xc]
mov ecx, dword [esp + 0x30]
add eax, edx
dec ecx
mov dword [esp + 0x70], edi
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x30], ecx
jne 0x48ee80
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x34]
mov edx, eax
mov dword [edx], ecx
mov ecx, dword [esp + 0x38]
mov dword [edx + 4], ecx
mov ecx, dword [esp + 0x3c]
pop edi
pop esi
mov dword [edx + 8], ecx
mov ecx, dword [esp + 0x38]
pop ebp
mov dword [edx + 0xc], ecx
pop ebx
add esp, 0x54
ret 0x24