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

Disassembly:
sub esp, 0x38
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov esi, dword [edi + 0x72578]
mov edx, dword [edi + 0x725bc]
mov ax, word [edi + 0x2048]
mov bx, word [edi + 0x2044]
mov bp, word [edi + 0x2046]
mov ecx, esi
sub ecx, edx
mov dword [esp + 0x18], esi
cmp ecx, 0x2710
mov word [esp + 0x1c], ax
jbe 0x48bba5
push 0
push 0x4bdaa0
push 0
push 0
push 1
push 0
push 0xa52
push 0xfa314dc
mov ecx, edi
call fcn.00405900
mov dword [edi + 0x725bc], esi
mov ecx, dword [edi + 0x3824c]
mov esi, dword [edi + 0x72578]
movsx ebp, bp
movsx ebx, bx
test ecx, ecx
mov dword [esp + 0x10], ebp
lea eax, [ebp - 0xb]
mov dword [esp + 0x14], ebx
lea edx, [ebx - 1]
je 0x48bbec
cmp dword [edi + 0x72db4], 1
jne 0x48bbde
push esi
push 0
push eax
push edx
call fcn.004a13b0
jmp 0x48bbec
push 0
push 0
push esi
push 0
push eax
push edx
call fcn.0049e020
mov ecx, dword [edi + 0x38244]
mov eax, dword [edi + 0x72578]
test ecx, ecx
je 0x48bc1f
cmp dword [edi + 0x72db4], 1
jne 0x48bc11
push eax
push 0x10
push ebp
push ebx
call fcn.004a13b0
jmp 0x48bc1f
push 0
push 0
push eax
push 0x10
push ebp
push ebx
call fcn.0049e020
movsx eax, byte [edi + 0x20ce]
sub eax, 0
je 0x48c70c
dec eax
je 0x48bf79
dec eax
jne 0x48cab9
lea esi, [edi + 0x7f1c]
mov ecx, esi
call fcn.00402880
movsx ecx, word [esp + 0x1c]
lea eax, [ebp + 0x28]
add ecx, ebx
lea edx, [eax + 0xf]
push edx
push ecx
push eax
lea edx, [esp + 0x44]
push ebx
push edx
call dword [sym.imp.user32.dll_SetRect]
push 0
lea eax, [esp + 0x3c]
push 0x4c724c
push eax
mov ecx, esi
call fcn.004028e0
mov ecx, esi
call fcn.004028c0
mov ecx, dword [edi + 0x3824c]
mov eax, dword [edi + 0x72578]
test ecx, ecx
je 0x48bcb3
cmp dword [edi + 0x72db4], 1
jne 0x48bca5
push eax
push 0x15
push ebp
push ebx
call fcn.004a13b0
jmp 0x48bcb3
push 0
push 0
push eax
push 0x15
push ebp
push ebx
call fcn.0049e020
mov ecx, dword [esp + 0x4c]
lea eax, [ebx + 0x46]
cmp ecx, eax
jl 0x48bcf0
lea edx, [ebx + 0x74]
cmp ecx, edx
jg 0x48bcf0
mov ecx, dword [esp + 0x50]
lea eax, [ebp + 0x154]
cmp ecx, eax
jl 0x48bcf0
lea eax, [ebp + 0x188]
cmp ecx, eax
jg 0x48bcf0
mov ecx, dword [esp + 0x18]
push 0
push 0
push ecx
push 0xf
lea eax, [ebp + 0x154]
jmp 0x48bd01
mov edx, dword [esp + 0x18]
push 0
push 0
push edx
lea eax, [ebp + 0x154]
push 1
mov ecx, dword [edi + 0x3824c]
push eax
lea eax, [ebx + 0x46]
push eax
call fcn.0049e020
mov ecx, dword [esp + 0x4c]
lea eax, [ebx + 0xc2]
cmp ecx, eax
jl 0x48bd4e
lea eax, [ebx + 0xf0]
cmp ecx, eax
jg 0x48bd4e
mov ecx, dword [esp + 0x50]
lea eax, [ebp + 0x154]
cmp ecx, eax
jl 0x48bd4e
lea edx, [ebp + 0x188]
cmp ecx, edx
jg 0x48bd4e
mov eax, dword [esp + 0x18]
push 0
push 0
push eax
push 0x13
jmp 0x48bd59
mov ecx, dword [esp + 0x18]
push 0
push 0
push ecx
push 0x14
mov ecx, dword [edi + 0x3824c]
lea eax, [ebp + 0x154]
push eax
lea eax, [ebx + 0xc2]
push eax
call fcn.0049e020
mov ecx, dword [esp + 0x4c]
lea eax, [ebx + 0xf4]
cmp ecx, eax
jl 0x48bdaf
lea edx, [ebx + 0x122]
cmp ecx, edx
jg 0x48bdaf
mov ecx, dword [esp + 0x50]
lea eax, [ebp + 0x154]
cmp ecx, eax
jl 0x48bdaf
lea eax, [ebp + 0x188]
cmp ecx, eax
jg 0x48bdaf
mov ecx, dword [esp + 0x18]
push 0
push 0
push ecx
push 0x12
jmp 0x48bdba
mov edx, dword [esp + 0x18]
push 0
push 0
push edx
push 4
mov ecx, dword [edi + 0x3824c]
lea eax, [ebp + 0x154]
push eax
lea eax, [ebx + 0xf4]
push eax
call fcn.0049e020
mov ecx, dword [esp + 0x4c]
lea eax, [ebx + 0x46]
cmp ecx, eax
jl 0x48be55
lea eax, [ebx + 0x74]
cmp ecx, eax
jg 0x48be55
mov eax, dword [esp + 0x50]
lea edx, [ebp + 0x154]
cmp eax, edx
jl 0x48be59
lea edx, [ebp + 0x188]
cmp eax, edx
jg 0x48be59
lea ebp, [ecx + 0x14]
mov ecx, esi
lea ebx, [eax + 0x23]
call fcn.00402880
push 0
lea eax, [ebp + 1]
push 0x4c722c
push ebx
push eax
mov ecx, esi
call fcn.00402520
lea eax, [ebx + 1]
push 0
push 0x4c722c
push eax
push ebp
mov ecx, esi
call fcn.00402520
push 0
lea eax, [ebx + 1]
push 0x4c722c
push eax
lea eax, [ebp + 1]
mov ecx, esi
push eax
call fcn.00402520
push 0xffffff
push 0x4c722c
jmp 0x48caa9
mov eax, dword [esp + 0x50]
lea edx, [ebx + 0xc2]
cmp ecx, edx
jl 0x48bee1
lea edx, [ebx + 0xf0]
cmp ecx, edx
jg 0x48bee1
lea edx, [ebp + 0x154]
cmp eax, edx
jl 0x48bee1
lea edx, [ebp + 0x188]
cmp eax, edx
jg 0x48bee1
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x50]
lea ebp, [ecx + 0x14]
mov ecx, esi
lea ebx, [eax + 0x23]
call fcn.00402880
push 0
lea eax, [ebp + 1]
push 0x4c7210
push ebx
push eax
mov ecx, esi
call fcn.00402520
lea eax, [ebx + 1]
push 0
push 0x4c7210
push eax
push ebp
mov ecx, esi
call fcn.00402520
push 0
lea eax, [ebx + 1]
push 0x4c7210
push eax
lea eax, [ebp + 1]
mov ecx, esi
push eax
call fcn.00402520
push 0xffffff
push 0x4c7210
jmp 0x48caa9
lea edx, [ebx + 0xf4]
cmp ecx, edx
jl 0x48cab9
add ebx, 0x122
cmp ecx, ebx
jg 0x48cab9
lea ecx, [ebp + 0x154]
cmp eax, ecx
jl 0x48cab9
add ebp, 0x188
cmp eax, ebp
jg 0x48cab9
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x4c]
mov ecx, esi
lea ebx, [edx + 0x23]
lea ebp, [eax + 0x14]
call fcn.00402880
push 0
lea eax, [ebp + 1]
push 0x4c71fc
push ebx
push eax
mov ecx, esi
call fcn.00402520
lea eax, [ebx + 1]
push 0
push 0x4c71fc
push eax
push ebp
mov ecx, esi
call fcn.00402520
push 0
lea eax, [ebx + 1]
push 0x4c71fc
push eax
lea eax, [ebp + 1]
mov ecx, esi
push eax
call fcn.00402520
push 0xffffff
push 0x4c71fc
jmp 0x48caa9
mov ecx, dword [esp + 0x10]
lea esi, [edi + 0x7f1c]
lea ebx, [ecx + 0x28]
mov ecx, esi
call fcn.00402880
movsx eax, word [esp + 0x1c]
mov ebp, dword [esp + 0x14]
lea edx, [ebx + 0xf]
add eax, ebp
push edx
push eax
push ebx
mov ebx, dword [sym.imp.user32.dll_SetRect]
lea ecx, [esp + 0x44]
push ebp
push ecx
call ebx
push 0
lea edx, [esp + 0x3c]
push 0x4c71e8
push edx
mov ecx, esi
call fcn.004028e0
mov ecx, esi
call fcn.004028c0
mov ecx, esi
call fcn.00402880
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
add eax, 0x50
add ebp, 0x143
lea ecx, [eax + 0xf]
push ecx
push ebp
push eax
lea eax, [esp + 0x44]
push edx
push eax
call ebx
push 0
lea ecx, [esp + 0x3c]
push 0x4c71c4
push ecx
mov ecx, esi
call fcn.004028e0
mov ecx, esi
call fcn.004028c0
mov ecx, esi
call fcn.00402880
mov edx, dword [esp + 0x10]
lea eax, [edx + 0x5f]
mov edx, dword [esp + 0x14]
lea ecx, [eax + 0xf]
push ecx
push ebp
push eax
lea eax, [esp + 0x44]
push edx
push eax
call ebx
push 0
lea ecx, [esp + 0x3c]
push 0x4c71a8
push ecx
mov ecx, esi
call fcn.004028e0
mov ecx, esi
call fcn.004028c0
mov ecx, esi
call fcn.00402880
mov edx, dword [esp + 0x10]
lea eax, [edx + 0x6e]
mov edx, dword [esp + 0x14]
lea ecx, [eax + 0xf]
push ecx
push ebp
push eax
lea eax, [esp + 0x44]
push edx
push eax
call ebx
push 0
lea ecx, [esp + 0x3c]
push 0x4c717c
push ecx
mov ecx, esi
call fcn.004028e0
mov ecx, esi
call fcn.004028c0
mov ecx, esi
call fcn.00402880
mov edx, dword [esp + 0x10]
lea eax, [edx + 0x7d]
mov edx, dword [esp + 0x14]
lea ecx, [eax + 0xf]
push ecx
push ebp
push eax
lea eax, [esp + 0x44]
push edx
push eax
call ebx
push 0
lea ecx, [esp + 0x3c]
push 0x4c7158
push ecx
mov ecx, esi
call fcn.004028e0
mov ecx, esi
call fcn.004028c0
mov ecx, esi
call fcn.00402880
mov edx, dword [esp + 0x10]
lea eax, [edx + 0x8c]
mov edx, dword [esp + 0x14]
lea ecx, [eax + 0xf]
push ecx
push ebp
push eax
lea eax, [esp + 0x44]
push edx
push eax
call ebx
push 0
lea ecx, [esp + 0x3c]
push 0x4c713c
push ecx
mov ecx, esi
call fcn.004028e0
mov ecx, esi
call fcn.004028c0
mov ecx, esi
call fcn.00402880
mov edx, dword [esp + 0x10]
lea eax, [edx + 0x9b]
lea edx, [esp + 0x38]
lea ecx, [eax + 0xf]
push ecx
push ebp
mov ebp, dword [esp + 0x1c]
push eax
push ebp
push edx
call ebx
push 0
lea eax, [esp + 0x3c]
push 0x4c7128
push eax
mov ecx, esi
call fcn.004028e0
mov ecx, esi
call fcn.004028c0
mov eax, dword [esp + 0x4c]
add ebp, 0x14
cmp eax, ebp
mov dword [esp + 0x24], ebp
jl 0x48c183
mov ecx, dword [esp + 0x14]
mov ebx, eax
add ecx, 0x42
cmp ebx, ecx
jg 0x48c187
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x50]
lea eax, [edx + 0xdc]
cmp ecx, eax
jl 0x48c187
add edx, 0x10e
cmp ecx, edx
jg 0x48c187
mov edx, dword [esp + 0x10]
mov ebp, dword [esp + 0x18]
push 0
push 0
push ebp
lea eax, [edx + 0xdc]
push 0x1b
push eax
mov eax, dword [esp + 0x38]
push eax
jmp 0x48c1a2
mov ebx, dword [esp + 0x4c]
mov ecx, dword [esp + 0x10]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x24]
push 0
push 0
lea eax, [ecx + 0xdc]
push ebp
push 0x21
push eax
push edx
mov ecx, dword [edi + 0x3824c]
call fcn.0049e020
mov ecx, dword [esp + 0x14]
lea eax, [ecx + 0x46]
cmp ebx, eax
jl 0x48c1f5
add ecx, 0x73
cmp ebx, ecx
jg 0x48c1f5
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x50]
lea eax, [edx + 0xdc]
cmp ecx, eax
jl 0x48c1f5
add edx, 0x10e
cmp ecx, edx
jg 0x48c1f5
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
push 0
push 0
push ebp
add eax, 0xdc
push 0x1c
push eax
lea eax, [ecx + 0x46]
jmp 0x48c20e
mov edx, dword [esp + 0x10]
push 0
push 0
push ebp
lea eax, [edx + 0xdc]
push 0x22
push eax
mov eax, dword [esp + 0x28]
add eax, 0x46
mov ecx, dword [edi + 0x3824c]
push eax
call fcn.0049e020
mov ecx, dword [esp + 0x14]
lea eax, [ecx + 0x78]
cmp ebx, eax
jl 0x48c266
add ecx, 0xa5
cmp ebx, ecx
jg 0x48c266
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x50]
lea eax, [edx + 0xdc]
cmp ecx, eax
jl 0x48c266
add edx, 0x10e
cmp ecx, edx
jg 0x48c266
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
push 0
push 0
push ebp
lea eax, [ecx + 0xdc]
push 0x1a
push eax
lea eax, [edx + 0x78]
jmp 0x48c27e
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
push 0
push 0
push ebp
add eax, 0xdc
push 0x20
push eax
lea eax, [ecx + 0x78]
mov ecx, dword [edi + 0x3824c]
push eax
call fcn.0049e020
mov ecx, dword [esp + 0x14]
lea eax, [ecx + 0xaa]
cmp ebx, eax
jl 0x48c2db
add ecx, 0xd7
cmp ebx, ecx
jg 0x48c2db
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x50]
lea eax, [edx + 0xdc]
cmp ecx, eax
jl 0x48c2db
add edx, 0x10e
cmp ecx, edx
jg 0x48c2db
mov edx, dword [esp + 0x10]
push 0
push 0
push ebp
lea eax, [edx + 0xdc]
push 0x19
push eax
mov eax, dword [esp + 0x28]
add eax, 0xaa
jmp 0x48c2f7
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
push 0
push 0
push ebp
lea eax, [ecx + 0xdc]
push 0x1f
push eax
lea eax, [edx + 0xaa]
mov ecx, dword [edi + 0x3824c]
push eax
call fcn.0049e020
mov ecx, dword [esp + 0x14]
lea eax, [ecx + 0xc2]
cmp ebx, eax
jl 0x48c34f
add ecx, 0xf0
cmp ebx, ecx
jg 0x48c34f
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x50]
lea eax, [edx + 0x142]
cmp ecx, eax
mov dword [esp + 0x1c], eax
jl 0x48c34f
add edx, 0x176
cmp ecx, edx
jg 0x48c34f
mov ecx, dword [esp + 0x14]
push 0
push 0
push ebp
push 0x13
push eax
lea eax, [ecx + 0xc2]
jmp 0x48c36e
mov edx, dword [esp + 0x10]
push 0
push 0
push ebp
lea eax, [edx + 0x142]
push 0x14
mov dword [esp + 0x2c], eax
push eax
mov eax, dword [esp + 0x28]
add eax, 0xc2
mov ecx, dword [edi + 0x3824c]
push eax
call fcn.0049e020
mov ecx, dword [esp + 0x14]
lea eax, [ecx + 0xf4]
cmp ebx, eax
mov dword [esp + 0x20], eax
jl 0x48c3c3
add ecx, 0x122
cmp ebx, ecx
jg 0x48c3c3
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x1c]
cmp eax, ecx
jl 0x48c3c3
mov ecx, dword [esp + 0x10]
add ecx, 0x176
cmp eax, ecx
jg 0x48c3c3
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
push 0
push 0
push ebp
push 0x12
push edx
push eax
jmp 0x48c3d4
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
push 0
push 0
push ebp
push 4
push ecx
push edx
mov ecx, dword [edi + 0x3824c]
call fcn.0049e020
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x14]
cmp ebx, eax
jl 0x48c468
lea eax, [edx + 0x42]
cmp ebx, eax
jg 0x48c468
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x50]
lea ebp, [ecx + 0xdc]
cmp eax, ebp
jl 0x48c470
lea ebp, [ecx + 0x10e]
cmp eax, ebp
jg 0x48c470
mov ecx, esi
lea ebp, [eax + 0x23]
add ebx, 0x14
call fcn.00402880
push 0
lea eax, [ebx + 1]
push 0x4c23cc
push ebp
push eax
mov ecx, esi
call fcn.00402520
lea eax, [ebp + 1]
push 0
push 0x4c23cc
push eax
push ebx
mov ecx, esi
call fcn.00402520
push 0
lea eax, [ebp + 1]
push 0x4c23cc
push eax
lea eax, [ebx + 1]
mov ecx, esi
push eax
call fcn.00402520
push 0xffffff
push 0x4c23cc
push ebp
push ebx
jmp 0x48caab
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x10]
lea ebp, [edx + 0x46]
cmp ebx, ebp
jl 0x48c4ec
lea ebp, [edx + 0x73]
cmp ebx, ebp
jg 0x48c4ec
lea ebp, [ecx + 0xdc]
cmp eax, ebp
jl 0x48c4ec
lea ebp, [ecx + 0x10e]
cmp eax, ebp
jg 0x48c4ec
mov ecx, esi
lea ebp, [eax + 0x23]
add ebx, 0x14
call fcn.00402880
push 0
lea eax, [ebx + 1]
push 0x4bd3a8
push ebp
push eax
mov ecx, esi
call fcn.00402520
lea eax, [ebp + 1]
push 0
push 0x4bd3a8
push eax
push ebx
mov ecx, esi
call fcn.00402520
push 0
lea eax, [ebp + 1]
push 0x4bd3a8
push eax
lea eax, [ebx + 1]
mov ecx, esi
push eax
call fcn.00402520
push 0xffffff
push 0x4bd3a8
push ebp
push ebx
jmp 0x48caab
lea ebp, [edx + 0x78]
cmp ebx, ebp
jl 0x48c56b
lea ebp, [edx + 0xa5]
cmp ebx, ebp
jg 0x48c56b
lea ebp, [ecx + 0xdc]
cmp eax, ebp
jl 0x48c56b
lea ebp, [ecx + 0x10e]
cmp eax, ebp
jg 0x48c56b
mov ecx, esi
lea ebp, [eax + 0x23]
add ebx, 0x14
call fcn.00402880
push 0
lea eax, [ebx + 1]
push 0x4c2434
push ebp
push eax
mov ecx, esi
call fcn.00402520
lea eax, [ebp + 1]
push 0
push 0x4c2434
push eax
push ebx
mov ecx, esi
call fcn.00402520
push 0
lea eax, [ebp + 1]
push 0x4c2434
push eax
lea eax, [ebx + 1]
mov ecx, esi
push eax
call fcn.00402520
push 0xffffff
push 0x4c2434
push ebp
push ebx
jmp 0x48caab
lea ebp, [edx + 0xaa]
cmp ebx, ebp
jl 0x48c5ed
lea ebp, [edx + 0xd7]
cmp ebx, ebp
jg 0x48c5ed
lea ebp, [ecx + 0xdc]
cmp eax, ebp
jl 0x48c5ed
lea ebp, [ecx + 0x10e]
cmp eax, ebp
jg 0x48c5ed
mov ecx, esi
lea ebp, [eax + 0x23]
add ebx, 0x14
call fcn.00402880
push 0
lea eax, [ebx + 1]
push 0x4c23fc
push ebp
push eax
mov ecx, esi
call fcn.00402520
lea eax, [ebp + 1]
push 0
push 0x4c23fc
push eax
push ebx
mov ecx, esi
call fcn.00402520
push 0
lea eax, [ebp + 1]
push 0x4c23fc
push eax
lea eax, [ebx + 1]
mov ecx, esi
push eax
call fcn.00402520
push 0xffffff
push 0x4c23fc
push ebp
push ebx
jmp 0x48caab
lea ebp, [edx + 0xc2]
cmp ebx, ebp
jl 0x48c66b
add edx, 0xf0
cmp ebx, edx
jg 0x48c66b
cmp eax, dword [esp + 0x1c]
jl 0x48c66b
add ecx, 0x176
cmp eax, ecx
jg 0x48c66b
mov ecx, esi
lea ebp, [eax + 0x23]
add ebx, 0x14
call fcn.00402880
push 0
lea eax, [ebx + 1]
push 0x4c710c
push ebp
push eax
mov ecx, esi
call fcn.00402520
lea eax, [ebp + 1]
push 0
push 0x4c710c
push eax
push ebx
mov ecx, esi
call fcn.00402520
push 0
lea eax, [ebp + 1]
push 0x4c710c
push eax
lea eax, [ebx + 1]
mov ecx, esi
push eax
call fcn.00402520
push 0xffffff
push 0x4c710c
push ebp
push ebx
jmp 0x48caab
cmp ebx, dword [esp + 0x20]
jl 0x48cab9
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x4c]
add ecx, 0x122
cmp eax, ecx
jg 0x48cab9
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x50]
cmp eax, edx
jl 0x48cab9
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x50]
add eax, 0x176
cmp ecx, eax
jg 0x48cab9
mov edx, dword [esp + 0x4c]
lea ebx, [ecx + 0x23]
mov ecx, esi
lea ebp, [edx + 0x14]
call fcn.00402880
push 0
lea eax, [ebp + 1]
push 0x4c70f4
push ebx
push eax
mov ecx, esi
call fcn.00402520
lea eax, [ebx + 1]
push 0
push 0x4c70f4
push eax
push ebp
mov ecx, esi
call fcn.00402520
push 0
lea eax, [ebx + 1]
push 0x4c70f4
push eax
lea eax, [ebp + 1]
mov ecx, esi
push eax
call fcn.00402520
push 0xffffff
push 0x4c70f4
jmp 0x48caa9
cmp dword [edi + 0x72f94], 0xffffffff
je 0x48c79b
xor eax, eax
lea ecx, [esp + 0x2c]
mov dword [esp + 0x2c], eax
lea edx, [edi + 0x73608]
mov dword [esp + 0x30], eax
push ecx
push edx
mov ecx, edi
mov dword [esp + 0x3c], eax
call fcn.0045dee0
mov ecx, dword [edi + 0x72f98]
mov edx, dword [edi + 0x72f94]
push ecx
lea ecx, [esp + 0x30]
push edx
lea eax, [edi + 0x730ed]
push ecx
push 0x4c70cc
push eax
call dword [sym.imp.user32.dll_wsprintfA]
lea esi, [edi + 0x7f1c]
add esp, 0x14
mov ecx, esi
call fcn.00402880
movsx ecx, word [esp + 0x1c]
lea eax, [ebp + 0x23]
add ecx, ebx
lea edx, [eax + 0xf]
push edx
push ecx
push eax
lea edx, [esp + 0x44]
push ebx
push edx
call dword [sym.imp.user32.dll_SetRect]
lea eax, [edi + 0x730ed]
push 0
push eax
lea eax, [esp + 0x40]
push eax
jmp 0x48c7d0
lea esi, [edi + 0x7f1c]
mov ecx, esi
call fcn.00402880
movsx edx, word [esp + 0x1c]
lea eax, [ebp + 0x23]
add edx, ebx
lea ecx, [eax + 0xf]
push ecx
push edx
push eax
lea eax, [esp + 0x44]
push ebx
push eax
call dword [sym.imp.user32.dll_SetRect]
push 0
lea ecx, [esp + 0x3c]
push 0x4c709c
push ecx
mov ecx, esi
call fcn.004028e0
mov ecx, esi
call fcn.004028c0
mov ecx, dword [edi + 0x3824c]
mov eax, dword [edi + 0x72578]
test ecx, ecx
je 0x48c811
cmp dword [edi + 0x72db4], 1
jne 0x48c803
push eax
push 0x15
push ebp
push ebx
call fcn.004a13b0
jmp 0x48c811
push 0
push 0
push eax
push 0x15
push ebp
push ebx
call fcn.0049e020
mov ecx, dword [esp + 0x4c]
lea eax, [ebx + 0x14]
cmp ecx, eax
jl 0x48c84c
lea edx, [ebx + 0x42]
cmp ecx, edx
jg 0x48c84c
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x50]
lea ebp, [ecx + 0x154]
cmp eax, ebp
jl 0x48c84c
add ecx, 0x188
cmp eax, ecx
jg 0x48c84c
mov eax, dword [esp + 0x18]
push 0
push 0
push eax
push 0x18
jmp 0x48c861
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
push 0
push 0
push edx
lea ebp, [ecx + 0x154]
push 0x1e
mov ecx, dword [edi + 0x3824c]
lea eax, [ebx + 0x14]
push ebp
push eax
call fcn.0049e020
mov ecx, dword [esp + 0x4c]
lea eax, [ebx + 0x46]
cmp ecx, eax
jl 0x48c8a6
lea eax, [ebx + 0x74]
cmp ecx, eax
jg 0x48c8a6
mov eax, dword [esp + 0x50]
cmp eax, ebp
jl 0x48c8a6
mov ecx, dword [esp + 0x10]
add ecx, 0x188
cmp eax, ecx
jg 0x48c8a6
mov edx, dword [esp + 0x18]
push 0
push 0
push edx
push 0xf
jmp 0x48c8b1
mov eax, dword [esp + 0x18]
push 0
push 0
push eax
push 1
mov ecx, dword [edi + 0x3824c]
lea eax, [ebx + 0x46]
push ebp
push eax
call fcn.0049e020
mov ecx, dword [esp + 0x4c]
lea eax, [ebx + 0xf4]
cmp ecx, eax
jl 0x48c8fc
lea edx, [ebx + 0x122]
cmp ecx, edx
jg 0x48c8fc
mov eax, dword [esp + 0x50]
cmp eax, ebp
jl 0x48c8fc
mov ecx, dword [esp + 0x10]
add ecx, 0x188
cmp eax, ecx
jg 0x48c8fc
mov edx, dword [esp + 0x18]
push 0
push 0
push edx
push 0x12
jmp 0x48c907
mov eax, dword [esp + 0x18]
push 0
push 0
push eax
push 4
mov ecx, dword [edi + 0x3824c]
lea eax, [ebx + 0xf4]
push ebp
push eax
call fcn.0049e020
mov eax, dword [esp + 0x4c]
lea ecx, [ebx + 0x14]
cmp eax, ecx
jl 0x48c9a0
lea ecx, [ebx + 0x42]
cmp eax, ecx
jg 0x48c9a0
mov ecx, dword [esp + 0x50]
cmp ecx, ebp
jl 0x48c9a4
mov edx, dword [esp + 0x10]
add edx, 0x188
cmp ecx, edx
jg 0x48c9a4
mov eax, ecx
mov ecx, dword [esp + 0x4c]
lea ebp, [ecx + 0x14]
mov ecx, esi
lea ebx, [eax + 0x23]
call fcn.00402880
push 0
lea eax, [ebp + 1]
push 0x4c71e8
push ebx
push eax
mov ecx, esi
call fcn.00402520
lea eax, [ebx + 1]
push 0
push 0x4c71e8
push eax
push ebp
mov ecx, esi
call fcn.00402520
push 0
lea eax, [ebx + 1]
push 0x4c71e8
push eax
lea eax, [ebp + 1]
mov ecx, esi
push eax
call fcn.00402520
push 0xffffff
push 0x4c71e8
jmp 0x48caa9
mov ecx, dword [esp + 0x50]
lea edx, [ebx + 0x46]
cmp eax, edx
jl 0x48ca24
lea edx, [ebx + 0x74]
cmp eax, edx
jg 0x48ca24
cmp ecx, ebp
jl 0x48ca24
mov edx, dword [esp + 0x10]
add edx, 0x188
cmp ecx, edx
jg 0x48ca24
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x50]
lea ebp, [ecx + 0x14]
mov ecx, esi
lea ebx, [eax + 0x23]
call fcn.00402880
push 0
lea eax, [ebp + 1]
push 0x4c7074
push ebx
push eax
mov ecx, esi
call fcn.00402520
lea eax, [ebx + 1]
push 0
push 0x4c7074
push eax
push ebp
mov ecx, esi
call fcn.00402520
push 0
lea eax, [ebx + 1]
push 0x4c7074
push eax
lea eax, [ebp + 1]
mov ecx, esi
push eax
call fcn.00402520
push 0xffffff
push 0x4c7074
jmp 0x48caa9
lea edx, [ebx + 0xf4]
cmp eax, edx
jl 0x48cab9
add ebx, 0x122
cmp eax, ebx
jg 0x48cab9
cmp ecx, ebp
jl 0x48cab9
mov edx, dword [esp + 0x10]
add edx, 0x188
cmp ecx, edx
jg 0x48cab9
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x50]
lea ebp, [ecx + 0x14]
mov ecx, esi
lea ebx, [eax + 0x23]
call fcn.00402880
push 0
lea eax, [ebp + 1]
push 0x4c705c
push ebx
push eax
mov ecx, esi
call fcn.00402520
lea eax, [ebx + 1]
push 0
push 0x4c705c
push eax
push ebp
mov ecx, esi
call fcn.00402520
push 0
lea eax, [ebx + 1]
push 0x4c705c
push eax
lea eax, [ebp + 1]
mov ecx, esi
push eax
call fcn.00402520
push 0xffffff
push 0x4c705c
push ebx
push ebp
mov ecx, esi
call fcn.00402520
mov ecx, esi
call fcn.004028c0
movsx eax, byte [edi + 0x20ce]
xor ebx, ebx
sub eax, ebx
je 0x48cacf
sub eax, 2
jne 0x48cf9f
lea ebp, [edi + 0x735b0]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x20], ebx
mov esi, 0x4bd870
mov eax, ebp
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x48cb10
test cl, cl
je 0x48cb0c
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x48cb10
add eax, 2
add esi, 2
test cl, cl
jne 0x48caec
xor eax, eax
jmp 0x48cb15
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
mov edx, 0x20c
jne 0x48cb30
mov eax, 0xfa
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], eax
jmp 0x48cbc0
mov esi, 0x4bd85c
mov eax, ebp
mov bl, byte [eax]
mov cl, bl
cmp bl, byte [esi]
jne 0x48cb5b
test cl, cl
je 0x48cb57
mov bl, byte [eax + 1]
mov cl, bl
cmp bl, byte [esi + 1]
jne 0x48cb5b
add eax, 2
add esi, 2
test cl, cl
jne 0x48cb37
xor eax, eax
jmp 0x48cb60
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x48cb73
mov eax, 0xfa
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], eax
jmp 0x48cbc0
mov esi, 0x4bdaa0
mov eax, ebp
mov bl, byte [eax]
mov cl, bl
cmp bl, byte [esi]
jne 0x48cb9e
test cl, cl
je 0x48cb9a
mov bl, byte [eax + 1]
mov cl, bl
cmp bl, byte [esi + 1]
jne 0x48cb9e
add eax, 2
add esi, 2
test cl, cl
jne 0x48cb7a
xor eax, eax
jmp 0x48cba3
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x48cc7d
mov eax, 0x118
mov dword [esp + 0x24], edx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], edx
mov ebp, dword [esp + 0x10]
lea esi, [edi + 0x5180]
mov dword [esp + 0x28], 0x12c
cmp byte [esi], 0x2a
jne 0x48cc69
mov ebx, dword [edi + 0x3824c]
test ebx, ebx
je 0x48cc69
movsx ecx, word [esi - 2]
movsx edx, word [esp + 0x18]
mov eax, dword [edi + 0x72578]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
push 0
push 0
push eax
mov dword [esp + 0x1c], edx
movsx eax, word [esp + 0x2c]
fild dword [esp + 0x1c]
mov dword [esp + 0x1c], eax
push 0x28
fmulp st(1)
fild dword [esp + 0x20]
fdivp st(1)
call fcn.004a7234
movsx edx, word [esi - 4]
lea ecx, [eax + ebp + 0x3c]
mov dword [esp + 0x20], edx
movsx eax, word [esp + 0x2c]
fild dword [esp + 0x20]
push ecx
mov dword [esp + 0x24], eax
movsx ecx, word [esp + 0x38]
fild dword [esp + 0x24]
mov dword [esp + 0x24], ecx
fmulp st(1)
fild dword [esp + 0x24]
fdivp st(1)
call fcn.004a7234
mov edx, dword [esp + 0x28]
mov ecx, ebx
lea eax, [eax + edx + 0xf]
push eax
call fcn.0049e020
mov eax, dword [esp + 0x28]
add esi, 6
dec eax
mov dword [esp + 0x28], eax
jne 0x48cbd2
jmp 0x48cc81
mov ebp, dword [esp + 0x10]
mov eax, dword [edi + 0x72fa0]
cmp eax, 0xffffffff
mov dword [esp + 0x10], eax
je 0x48cd14
cmp word [esp + 0x1c], 0
je 0x48cd14
mov esi, dword [edi + 0x3824c]
test esi, esi
je 0x48cd14
movsx edx, word [esp + 0x18]
fild dword [edi + 0x72fa4]
movsx eax, word [esp + 0x20]
mov dword [esp + 0x28], edx
mov ecx, dword [edi + 0x72578]
fild dword [esp + 0x28]
mov dword [esp + 0x28], eax
push ecx
fmulp st(1)
fild dword [esp + 0x2c]
push 0x2a
fdivp st(1)
call fcn.004a7234
movsx edx, word [esp + 0x24]
fild dword [esp + 0x18]
lea ecx, [eax + ebp + 0x3c]
mov dword [esp + 0x30], edx
movsx eax, word [esp + 0x2c]
fild dword [esp + 0x30]
mov dword [esp + 0x30], eax
push ecx
fmulp st(1)
fild dword [esp + 0x34]
fdivp st(1)
call fcn.004a7234
mov ecx, dword [esp + 0x20]
lea edx, [eax + ecx + 0xf]
mov ecx, esi
push edx
call fcn.004a13b0
cmp byte [edi + 0x20ce], 2
je 0x48cdb4
mov eax, dword [edi + 0x72f94]
cmp eax, 0xffffffff
mov dword [esp + 0x10], eax
je 0x48cdb4
cmp word [esp + 0x1c], 0
je 0x48cdb4
mov esi, dword [edi + 0x3824c]
test esi, esi
je 0x48cdb4
movsx ecx, word [esp + 0x18]
fild dword [edi + 0x72f98]
movsx edx, word [esp + 0x20]
mov dword [esp + 0x28], ecx
mov eax, dword [edi + 0x72578]
fild dword [esp + 0x28]
mov dword [esp + 0x28], edx
push eax
fmulp st(1)
fild dword [esp + 0x2c]
push 0x29
fdivp st(1)
call fcn.004a7234
movsx ecx, word [esp + 0x24]
fild dword [esp + 0x18]
movsx edx, word [esp + 0x2c]
mov dword [esp + 0x30], ecx
lea eax, [eax + ebp + 0x3c]
fild dword [esp + 0x30]
mov dword [esp + 0x30], edx
push eax
fmulp st(1)
fild dword [esp + 0x34]
fdivp st(1)
call fcn.004a7234
mov ecx, dword [esp + 0x20]
lea edx, [eax + ecx + 0xf]
mov ecx, esi
push edx
call fcn.004a13b0
mov esi, 0x4bdaa0
lea eax, [edi + 0x733bc]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x48cde7
test cl, cl
je 0x48cde3
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x48cde7
add eax, 2
add esi, 2
test cl, cl
jne 0x48cdbf
xor eax, eax
jmp 0x48cdec
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x48ce9f
movsx eax, word [edi + 0x72fd6]
mov esi, dword [edi + 0x6ea9c]
mov dword [esp + 0x28], eax
fild dword [esp + 0x28]
movsx ecx, word [esi + 0x93ab78]
fmul qword [0x4b7340]
mov dword [esp + 0x28], ecx
fild dword [esp + 0x28]
fdivp st(1)
call fcn.004a7234
movsx edx, word [esi + 0x93ab7a]
mov dword [esp + 0x28], edx
mov dword [esp + 0x24], eax
fild dword [esp + 0x28]
fcom qword [0x4b72d8]
fnstsw ax
test ah, 0x40
je 0x48ce4d
fstp st(0)
fld qword [0x4b72d8]
mov esi, dword [edi + 0x3824c]
test esi, esi
je 0x48ce9d
movsx ecx, word [edi + 0x72fd8]
mov dword [esp + 0x28], ecx
mov eax, dword [edi + 0x72578]
fild dword [esp + 0x28]
push 0
push 0
push eax
push 0x2b
fmul qword [0x4b7340]
fdiv st(1)
call fcn.004a7234
mov ebx, dword [esp + 0x24]
lea edx, [eax + ebp + 0x3c]
mov eax, dword [esp + 0x34]
push edx
fstp st(0)
lea ecx, [ebx + eax + 0xf]
push ecx
mov ecx, esi
call fcn.0049e020
jmp 0x48cea3
fstp st(0)
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x4c]
lea edx, [ebx + 0xf]
cmp eax, edx
jl 0x48cf9f
lea ecx, [ebx + 0x127]
cmp eax, ecx
jg 0x48cf9f
mov esi, dword [esp + 0x50]
lea edx, [ebp + 0x3c]
cmp esi, edx
jl 0x48cf9f
lea ecx, [ebp + 0x154]
cmp esi, ecx
jg 0x48cf9f
sub eax, ebx
sub eax, 0xf
mov dword [esp + 0x28], eax
fild dword [esp + 0x28]
fmul qword [0x4b72d8]
fmul qword [0x4b72d0]
call fcn.004a7234
sub esi, ebp
mov ebx, eax
sub esi, 0x3c
mov dword [esp + 0x28], esi
fild dword [esp + 0x28]
fmul qword [0x4b72d8]
fmul qword [0x4b72d0]
call fcn.004a7234
cmp ebx, 0x1e
jge 0x48cf25
mov ebx, 0x1e
cmp eax, 0x1e
jge 0x48cf2f
mov eax, 0x1e
cmp ebx, 0x20c
jle 0x48cf3c
mov ebx, 0x20c
cmp eax, 0x20c
jle 0x48cf48
mov eax, 0x20c
push eax
lea esi, [edi + 0x730ed]
push ebx
push 0x4be070
push esi
call dword [sym.imp.user32.dll_wsprintfA]
mov dx, word [edi + 0x73076]
mov ax, word [edi + 0x73056]
mov cx, word [edi + 0x73036]
add esp, 0x10
shl dx, 2
push 2
push 0
shl ax, 2
push edx
mov edx, dword [esp + 0x5c]
push eax
mov eax, dword [esp + 0x5c]
shl cx, 2
push ecx
add edx, 0xfffffff6
push esi
add eax, 0xa
push edx
push eax
mov ecx, edi
call fcn.004173d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret 8