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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x5514b9
mov eax, dword fs:[0]
push eax
sub esp, 0xb4
push ebx
push ebp
push esi
push edi
mov eax, dword [0x5b3720]
xor eax, esp
push eax
lea eax, [esp + 0xc8]
mov dword fs:[0], eax
mov ebp, ecx
xor ebx, ebx
cmp dword [ebp + 0x84], ebx
jne 0x488588
xor eax, eax
mov ecx, dword [esp + 0xc8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
or edi, 0xffffffff
cmp dword [ebp + 0x1238], ebx
je 0x4885d5
push 0x28
call fcn.004fe8de
mov esi, eax
add esp, 4
mov dword [esp + 0x30], esi
cmp esi, ebx
mov dword [esp + 0xd0], ebx
je 0x4885c3
push esi
call fcn.004b9160
mov dword [esi], vtable.CVoizRealSetting.0
mov dword [esi + 0x14], 0x24
jmp 0x4885c5
xor esi, esi
mov dword [esp + 0xd0], edi
mov eax, dword [ebp + 0x1c4]
mov dword [eax + 0x30], esi
mov eax, dword [ebp + 0x1c0]
mov ecx, dword [eax + 0x1c8]
test ecx, 0xc0000
jne 0x4885ed
xor ecx, ecx
jmp 0x4885f2
mov ecx, 1
mov dword [ebp + 0x1d4], ecx
movzx edx, byte [eax + 0x1cb]
and edx, 1
mov dword [ebp + 0x1d8], edx
test dword [eax + 0x60], 0x8000000
je 0x488621
mov dword [ebp + 0x1238], 1
mov dword [ebp + 0x123c], ebx
cmp ecx, ebx
jne 0x488635
cmp dword [ebp + 0x1d8], ebx
jne 0x488635
push ebx
push 0x683
jmp 0x48863b
push ebx
push 0x67a
mov ecx, ebp
call fcn.00505278
mov ecx, eax
call fcn.00505414
cmp dword [ebp + 0x1238], ebx
lea ecx, [ebp + 0x760]
je 0x488682
push ebx
call fcn.00505414
lea ecx, [ebp + 0x818]
push ebx
call fcn.00505414
push 5
push 0x686
mov ecx, ebp
call fcn.00505278
mov ecx, eax
call fcn.00505414
push 5
jmp 0x4886ab
push 5
call fcn.00505414
lea ecx, [ebp + 0x818]
push 5
call fcn.00505414
push ebx
push 0x686
mov ecx, ebp
call fcn.00505278
mov ecx, eax
call fcn.00505414
push ebx
push 0x685
mov ecx, ebp
call fcn.00505278
mov ecx, eax
call fcn.00505414
fldz
fld qword [0x5beef8]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jp 0x4886de
fstp st(0)
call fcn.004295d0
fld qword [0x5beef8]
fld qword [0x58bd28]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x488772
cmp dword [ebp + 0x1238], ebx
fstp st(0)
je 0x48881a
mov dword [ebp + 0x1168], 0x360
mov dword [ebp + 0x116c], 0x367
mov dword [ebp + 0x1170], 0x38a
mov dword [ebp + 0x1174], 0x391
mov dword [ebp + 0x1178], 0x36e
mov dword [ebp + 0x117c], 0x37c
mov dword [ebp + 0x1180], 0x375
mov dword [ebp + 0x1184], 0x383
mov dword [ebp + 0x1188], 0x398
mov dword [ebp + 0x118c], 0x39f
mov dword [ebp + 0x1dc], 0x19
jmp 0x488ce7
fldz
fucomp st(1)
fnstsw ax
test ah, 0x44
jp 0x48878a
fstp st(0)
call fcn.004295d0
fld qword [0x5beef8]
fld qword [0x58bd20]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x488883
cmp dword [ebp + 0x1238], ebx
fstp st(0)
je 0x48881a
mov dword [ebp + 0x1168], 0x361
mov dword [ebp + 0x116c], 0x368
mov dword [ebp + 0x1170], 0x38b
mov dword [ebp + 0x1174], 0x392
mov dword [ebp + 0x1178], 0x36f
mov dword [ebp + 0x117c], 0x37d
mov dword [ebp + 0x1180], 0x376
mov dword [ebp + 0x1184], 0x384
mov dword [ebp + 0x1188], 0x399
mov dword [ebp + 0x118c], 0x3a0
mov dword [ebp + 0x1dc], 0x19
jmp 0x488ce7
mov dword [ebp + 0x1164], 0x351
mov dword [ebp + 0x1168], 0x320
mov dword [ebp + 0x116c], 0x321
mov dword [ebp + 0x1170], 0x324
mov dword [ebp + 0x1174], 0x325
mov dword [ebp + 0x1178], 0x322
mov dword [ebp + 0x117c], 0x323
mov dword [ebp + 0x1188], 0x31f
mov dword [ebp + 0x118c], 0x327
mov dword [ebp + 0x1dc], 0x32
jmp 0x488ce7
fldz
fucomp st(1)
fnstsw ax
test ah, 0x44
jp 0x48889b
fstp st(0)
call fcn.004295d0
fld qword [0x5beef8]
fcomp qword [0x58c220]
fnstsw ax
test ah, 5
jp 0x488927
cmp dword [ebp + 0x1238], ebx
je 0x4889b8
mov dword [ebp + 0x1168], 0x362
mov dword [ebp + 0x116c], 0x369
mov dword [ebp + 0x1170], 0x38c
mov dword [ebp + 0x1174], 0x393
mov dword [ebp + 0x1178], 0x370
mov dword [ebp + 0x117c], 0x37e
mov dword [ebp + 0x1180], 0x377
mov dword [ebp + 0x1184], 0x385
mov dword [ebp + 0x1188], 0x39a
mov dword [ebp + 0x118c], 0x3a1
mov dword [ebp + 0x1dc], 0x32
jmp 0x488ce7
call fcn.00429650
fcomp qword [0x58c140]
fnstsw ax
test ah, 5
jp 0x488a21
cmp dword [ebp + 0x1238], ebx
je 0x4889b8
mov dword [ebp + 0x1168], 0x363
mov dword [ebp + 0x116c], 0x36a
mov dword [ebp + 0x1170], 0x38d
mov dword [ebp + 0x1174], 0x394
mov dword [ebp + 0x1178], 0x371
mov dword [ebp + 0x117c], 0x37f
mov dword [ebp + 0x1180], 0x378
mov dword [ebp + 0x1184], 0x386
mov dword [ebp + 0x1188], 0x39b
mov dword [ebp + 0x118c], 0x3a2
mov dword [ebp + 0x1dc], 0x32
jmp 0x488ce7
mov dword [ebp + 0x1164], 0x352
mov dword [ebp + 0x1168], 0x329
mov dword [ebp + 0x116c], 0x32e
mov dword [ebp + 0x1170], 0x33d
mov dword [ebp + 0x1174], 0x342
mov dword [ebp + 0x1178], 0x333
mov dword [ebp + 0x117c], 0x338
mov dword [ebp + 0x1188], 0x347
mov dword [ebp + 0x118c], 0x34c
mov dword [ebp + 0x1dc], 0x4b
jmp 0x488ce7
call fcn.00429650
fcomp qword [0x58bc90]
fnstsw ax
test ah, 5
jp 0x488b1b
cmp dword [ebp + 0x1238], ebx
je 0x488ab2
mov dword [ebp + 0x1168], 0x364
mov dword [ebp + 0x116c], 0x36b
mov dword [ebp + 0x1170], 0x38e
mov dword [ebp + 0x1174], 0x395
mov dword [ebp + 0x1178], 0x372
mov dword [ebp + 0x117c], 0x380
mov dword [ebp + 0x1180], 0x379
mov dword [ebp + 0x1184], 0x387
mov dword [ebp + 0x1188], 0x39c
mov dword [ebp + 0x118c], 0x3a3
mov dword [ebp + 0x1dc], 0x64
jmp 0x488ce7
mov dword [ebp + 0x1164], 0x353
mov dword [ebp + 0x1168], 0x32a
mov dword [ebp + 0x116c], 0x32f
mov dword [ebp + 0x1170], 0x33e
mov dword [ebp + 0x1174], 0x343
mov dword [ebp + 0x1178], 0x334
mov dword [ebp + 0x117c], 0x339
mov dword [ebp + 0x1188], 0x348
mov dword [ebp + 0x118c], 0x34d
mov dword [ebp + 0x1dc], 0x64
jmp 0x488ce7
call fcn.00429650
fcomp qword [0x58c138]
fnstsw ax
test ah, 5
jp 0x488c15
cmp dword [ebp + 0x1238], ebx
je 0x488bac
mov dword [ebp + 0x1168], 0x365
mov dword [ebp + 0x116c], 0x36c
mov dword [ebp + 0x1170], 0x38f
mov dword [ebp + 0x1174], 0x396
mov dword [ebp + 0x1178], 0x373
mov dword [ebp + 0x117c], 0x381
mov dword [ebp + 0x1180], 0x37a
mov dword [ebp + 0x1184], 0x388
mov dword [ebp + 0x1188], 0x39d
mov dword [ebp + 0x118c], 0x3a4
mov dword [ebp + 0x1dc], 0x7d
jmp 0x488ce7
mov dword [ebp + 0x1164], 0x354
mov dword [ebp + 0x1168], 0x32b
mov dword [ebp + 0x116c], 0x330
mov dword [ebp + 0x1170], 0x33f
mov dword [ebp + 0x1174], 0x344
mov dword [ebp + 0x1178], 0x335
mov dword [ebp + 0x117c], 0x33a
mov dword [ebp + 0x1188], 0x349
mov dword [ebp + 0x118c], 0x34e
mov dword [ebp + 0x1dc], 0x7d
jmp 0x488ce7
cmp dword [ebp + 0x1238], ebx
je 0x488c83
mov dword [ebp + 0x1168], 0x366
mov dword [ebp + 0x116c], 0x36d
mov dword [ebp + 0x1170], 0x390
mov dword [ebp + 0x1174], 0x397
mov dword [ebp + 0x1178], 0x374
mov dword [ebp + 0x117c], 0x382
mov dword [ebp + 0x1180], 0x37b
mov dword [ebp + 0x1184], 0x389
mov dword [ebp + 0x1188], 0x39e
mov dword [ebp + 0x118c], 0x3a5
jmp 0x488cdd
mov dword [ebp + 0x1164], 0x355
mov dword [ebp + 0x1168], 0x32c
mov dword [ebp + 0x116c], 0x331
mov dword [ebp + 0x1170], 0x340
mov dword [ebp + 0x1174], 0x345
mov dword [ebp + 0x1178], 0x336
mov dword [ebp + 0x117c], 0x33b
mov dword [ebp + 0x1188], 0x34a
mov dword [ebp + 0x118c], 0x34f
mov dword [ebp + 0x1dc], 0x96
cmp dword [ebp + 0x8c], ebx
je 0x488d38
mov eax, dword [ebp + 0x8c]
cmp eax, ebx
je 0x488d38
push eax
mov dword [ebp + 0x8c], ebx
mov dword [ebp + 0x90], ebx
mov dword [ebp + 0x94], ebx
mov dword [ebp + 0x98], ebx
mov dword [ebp + 0xa0], ebx
mov dword [ebp + 0x9c], ebx
mov dword [ebp + 0xa8], edi
mov byte [ebp + 0xa5], 0
mov byte [ebp + 0xa4], 0
call dword [sym.imp.GDI32.dll_DeleteObject]
call fcn.00506c00
mov eax, dword [eax + 8]
push ebx
lea ecx, [ebp + 0x88]
push 0x3a6
push ecx
call fcn.004616a0
lea edi, [ebp + 0x250]
cmp edi, ebx
je 0x488d97
fld qword [0x5b65b8]
fmul qword [0x58bee0]
call fcn.005296d0
push 0x56c5e4
push 0x20
push ebx
push ebx
push ebx
push 1
push ebx
push ebx
push ebx
push 0x1f4
push ebx
push ebx
push ebx
push eax
call dword [sym.imp.GDI32.dll_CreateFontW]
push eax
mov ecx, edi
call fcn.005079bd
cmp edi, ebx
jne 0x488d9b
xor eax, eax
jmp 0x488d9e
mov eax, dword [edi + 4]
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push eax
mov eax, dword [ebp + 0x278]
push 0x30
push eax
call ebx
push 0
lea esi, [ebp + 0x258]
push 0xdd
call fcn.004b0830
test edi, edi
jne 0x488dcc
xor eax, eax
jmp 0x488dcf
mov eax, dword [edi + 4]
mov ecx, dword [ebp + 0x330]
push 0
push eax
push 0x30
push ecx
call ebx
push 0
lea esi, [ebp + 0x310]
push 0xdd
call fcn.004b0830
test edi, edi
jne 0x488df7
xor eax, eax
jmp 0x488dfa
mov eax, dword [edi + 4]
mov edx, dword [ebp + 0x3e8]
push 0
push eax
push 0x30
push edx
call ebx
push 0
lea esi, [ebp + 0x3c8]
push 0xdd
call fcn.004b0830
test edi, edi
jne 0x488e22
xor eax, eax
jmp 0x488e25
mov eax, dword [edi + 4]
push 0
push eax
mov eax, dword [ebp + 0x4a0]
push 0x30
push eax
call ebx
push 0
lea esi, [ebp + 0x480]
push 0xdd
call fcn.004b0830
test edi, edi
jne 0x488e4d
xor eax, eax
jmp 0x488e50
mov eax, dword [edi + 4]
mov ecx, dword [ebp + 0x558]
push 0
push eax
push 0x30
push ecx
call ebx
push 0
lea esi, [ebp + 0x538]
push 0xdd
call fcn.004b0830
test edi, edi
jne 0x488e78
xor eax, eax
jmp 0x488e7b
mov eax, dword [edi + 4]
mov edx, dword [ebp + 0x610]
push 0
push eax
push 0x30
push edx
call ebx
push 0
lea esi, [ebp + 0x5f0]
push 0xdd
call fcn.004b0830
test edi, edi
jne 0x488ea3
xor eax, eax
jmp 0x488ea6
mov eax, dword [edi + 4]
push 0
push eax
mov eax, dword [ebp + 0x6c8]
push 0x30
push eax
call ebx
push 0
lea esi, [ebp + 0x6a8]
push 0xdd
call fcn.004b0830
cmp dword [ebp + 0x1238], 0
je 0x48903f
push 0
lea ecx, [ebp + 0x760]
call fcn.00505414
push 0
lea ecx, [ebp + 0x818]
call fcn.00505414
test edi, edi
jne 0x488ef5
xor eax, eax
jmp 0x488ef8
mov eax, dword [edi + 4]
mov ecx, dword [ebp + 0x8f0]
push 0
push eax
push 0x30
push ecx
call ebx
push 0
push 0xce
lea esi, [ebp + 0x8d0]
call fcn.004b0830
test edi, edi
jne 0x488f20
xor eax, eax
jmp 0x488f23
mov eax, dword [edi + 4]
mov edx, dword [ebp + 0x9a8]
push 0
push eax
push 0x30
push edx
call ebx
push 0
push 0xce
lea esi, [ebp + 0x988]
call fcn.004b0830
test edi, edi
jne 0x488f4b
xor eax, eax
jmp 0x488f4e
mov eax, dword [edi + 4]
push 0
push eax
mov eax, dword [ebp + 0xa60]
push 0x30
push eax
call ebx
push 0
lea esi, [ebp + 0xa40]
push 0xce
call fcn.004b0830
cmp dword [ebp + 0x123c], 0
je 0x488fb0
push 0
lea ecx, [ebp + 0xaf8]
call fcn.00505414
push 0
lea ecx, [ebp + 0xbb0]
call fcn.00505414
push 0
lea ecx, [ebp + 0xc68]
call fcn.00505414
push 5
lea ecx, [ebp + 0xa40]
call fcn.00505414
jmp 0x489091
test edi, edi
jne 0x488fb8
xor eax, eax
jmp 0x488fbb
mov eax, dword [edi + 4]
mov ecx, dword [ebp + 0xb18]
push 0
push eax
push 0x30
push ecx
call ebx
push 0
push 0xce
lea esi, [ebp + 0xaf8]
call fcn.004b0830
test edi, edi
jne 0x488fe3
xor eax, eax
jmp 0x488fe6
mov eax, dword [edi + 4]
mov edx, dword [ebp + 0xbd0]
push 0
push eax
push 0x30
push edx
call ebx
push 0
push 0xdd
lea esi, [ebp + 0xbb0]
call fcn.004b0830
test edi, edi
jne 0x48900e
xor eax, eax
jmp 0x489013
mov eax, dword [edi + 4]
xor edi, edi
push edi
push eax
mov eax, dword [ebp + 0xc88]
push 0x30
push eax
call ebx
push edi
push 0xdd
lea esi, [ebp + 0xc68]
call fcn.004b0830
push edi
lea ecx, [ebp + 0xa40]
call fcn.00505414
jmp 0x489093
test edi, edi
jne 0x489047
xor eax, eax
jmp 0x48904a
mov eax, dword [edi + 4]
mov ecx, dword [ebp + 0x780]
push 0
push eax
push 0x30
push ecx
call ebx
push 0
push 0xdd
lea esi, [ebp + 0x760]
call fcn.004b0830
test edi, edi
je 0x489071
mov edi, dword [edi + 4]
mov edx, dword [ebp + 0x838]
push 0
push edi
push 0x30
push edx
call ebx
push 0
push 0xdd
lea esi, [ebp + 0x818]
call fcn.004b0830
xor edi, edi
mov eax, dword [ebp + 0x1e0]
mov edx, dword [eax + 0x134]
lea ecx, [ebp + 0x1e0]
push edi
push ebp
call edx
push 5
lea ecx, [ebp + 0x258]
call fcn.00505414
mov eax, dword [ebp + 0x278]
mov esi, dword [sym.imp.USER32.dll_RedrawWindow]
push 0x105
push edi
push edi
push eax
call esi
lea ebx, [ebp + 0x310]
push 5
mov ecx, ebx
call fcn.00505414
mov ecx, dword [ebp + 0x330]
push 0x105
push edi
push edi
push ecx
call esi
push 5
lea ecx, [ebp + 0x3c8]
call fcn.00505414
mov edx, dword [ebp + 0x3e8]
push 0x105
push edi
push edi
push edx
call esi
push 5
lea ecx, [ebp + 0x480]
call fcn.00505414
mov eax, dword [ebp + 0x4a0]
push 0x105
push edi
push edi
push eax
call esi
push edi
lea ecx, [ebp + 0x538]
call fcn.00505414
mov ecx, dword [ebp + 0x558]
push 0x105
push edi
push edi
push ecx
call esi
push edi
lea ecx, [ebp + 0x5f0]
call fcn.00505414
mov edx, dword [ebp + 0x610]
push 0x105
push edi
push edi
push edx
call esi
push 5
lea ecx, [ebp + 0x6a8]
call fcn.00505414
mov eax, dword [ebp + 0x6c8]
push 0x105
push edi
push edi
push eax
call esi
cmp dword [ebp + 0x1238], edi
jne 0x4891c6
cmp dword [ebp + 0x1d8], edi
jne 0x4891c6
push 5
lea ecx, [ebp + 0x760]
call fcn.00505414
mov ecx, dword [ebp + 0x780]
push 0x105
push edi
push edi
push ecx
call esi
push 5
lea ecx, [ebp + 0x818]
call fcn.00505414
mov edx, dword [ebp + 0x838]
push 0x105
push edi
push edi
push edx
call esi
jmp 0x4891de
push edi
lea ecx, [ebp + 0x760]
call fcn.00505414
push edi
lea ecx, [ebp + 0x818]
call fcn.00505414
cmp dword [ebp + 0x1d4], edi
je 0x4893fa
cmp ebx, edi
je 0x489209
mov ecx, dword [ebx + 0x20]
lea eax, [esp + 0x54]
push eax
push ecx
call dword [sym.imp.USER32.dll_GetWindowRect]
lea edx, [esp + 0x54]
push edx
mov ecx, ebp
call fcn.0050743c
lea eax, [ebp + 0x258]
cmp eax, edi
je 0x489231
mov ecx, dword [ebp + 0x278]
lea eax, [esp + 0x44]
push eax
push ecx
call dword [sym.imp.USER32.dll_GetWindowRect]
lea edx, [esp + 0x44]
push edx
mov ecx, ebp
call fcn.0050743c
lea eax, [ebp + 0x480]
cmp eax, edi
je 0x489259
mov ecx, dword [ebp + 0x4a0]
lea eax, [esp + 0x64]
push eax
push ecx
call dword [sym.imp.USER32.dll_GetWindowRect]
lea edx, [esp + 0x64]
push edx
mov ecx, ebp
call fcn.0050743c
lea eax, [ebp + 0x3c8]
cmp eax, edi
je 0x489281
mov ecx, dword [ebp + 0x3e8]
lea eax, [esp + 0x1c]
push eax
push ecx
call dword [sym.imp.USER32.dll_GetWindowRect]
lea edx, [esp + 0x1c]
push edx
mov ecx, ebp
call fcn.0050743c
lea eax, [ebp + 0xd20]
cmp eax, edi
je 0x4892a6
mov edx, dword [eax + 0x20]
lea ecx, [esp + 0x74]
push ecx
push edx
call dword [sym.imp.USER32.dll_GetWindowRect]
lea eax, [esp + 0x74]
push eax
mov ecx, ebp
call fcn.0050743c
mov edx, dword [ebp + 0x1dc]
mov ecx, dword [esp + 0x28]
sub ecx, dword [esp + 0x20]
sub edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x48]
add edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x44]
push 0x14
push ecx
push edx
push edi
push ebx
push 0
lea ecx, [ebp + 0x5f0]
call fcn.00505623
mov eax, dword [ebp + 0x1dc]
mov ecx, dword [esp + 0x70]
sub ecx, dword [esp + 0x68]
mov edx, eax
sub edx, dword [esp + 0x64]
sub eax, dword [esp + 0x1c]
add edx, dword [esp + 0x6c]
add eax, dword [esp + 0x24]
push 0x14
push ecx
push edx
push edi
add eax, ebx
push eax
push 0
lea ecx, [ebp + 0x538]
call fcn.00505623
mov edx, dword [esp + 0x80]
sub edx, dword [esp + 0x78]
mov ecx, dword [ebp + 0x1dc]
mov eax, dword [esp + 0x60]
sub ecx, dword [esp + 0x54]
sub eax, dword [esp + 0x58]
sub edx, dword [esp + 0x20]
add ecx, dword [esp + 0x5c]
add edx, dword [esp + 0x28]
push 0x14
push eax
push ecx
lea eax, [edx + edi + 0xa]
push eax
push ebx
push 0
lea ecx, [ebp + 0x6a8]
call fcn.00505623
mov ecx, dword [esp + 0x50]
sub ecx, dword [esp + 0x48]
mov eax, dword [ebp + 0x1dc]
push 0x14
push ecx
mov ecx, dword [esp + 0x88]
sub ecx, dword [esp + 0x80]
mov edx, eax
sub edx, dword [esp + 0x4c]
sub ecx, dword [esp + 0x28]
add edx, dword [esp + 0x54]
sub eax, dword [esp + 0x24]
add ecx, dword [esp + 0x30]
add eax, dword [esp + 0x2c]
push edx
lea edx, [ecx + edi + 0xa]
push edx
lea eax, [eax + ebx + 0xa]
push eax
push 0
lea ecx, [ebp + 0x258]
call fcn.00505623
push 0
lea ecx, [ebp + 0x480]
call fcn.00505414
push 0
lea ecx, [ebp + 0x3c8]
call fcn.00505414
push 0
lea ecx, [ebp + 0x310]
call fcn.00505414
push 0
lea ecx, [ebp + 0x760]
call fcn.00505414
push 0
lea ecx, [ebp + 0x818]
call fcn.00505414
push 5
lea ecx, [ebp + 0x538]
call fcn.00505414
push 5
lea ecx, [ebp + 0x5f0]
call fcn.00505414
xor edi, edi
mov ecx, dword [ebp + 0x2e4]
mov edx, dword [ebp + 0x278]
push 0x101
push edi
push edi
push edx
mov dword [ebp + 0x2e8], ecx
mov dword [ebp + 0x2e4], edi
call esi
mov eax, dword [0x5bda24]
cmp eax, edi
je 0x489436
mov ecx, dword [ebp + 0x278]
push edi
push 0xfffffffffffffffc
push ecx
push 0x800a
call eax
mov edx, dword [ebp + 0x39c]
mov eax, dword [ebp + 0x330]
push 0x101
push edi
push edi
push eax
mov dword [ebp + 0x3a0], edx
mov dword [ebp + 0x39c], edi
call esi
mov eax, dword [0x5bda24]
cmp eax, edi
je 0x489472
mov ecx, dword [ebp + 0x330]
push edi
push 0xfffffffffffffffc
push ecx
push 0x800a
call eax
mov edx, dword [ebp + 0x454]
mov eax, dword [ebp + 0x3e8]
push 0x101
push edi
push edi
push eax
mov dword [ebp + 0x458], edx
mov dword [ebp + 0x454], edi
call esi
mov eax, dword [0x5bda24]
cmp eax, edi
je 0x4894ae
mov ecx, dword [ebp + 0x3e8]
push edi
push 0xfffffffffffffffc
push ecx
push 0x800a
call eax
mov edx, dword [ebp + 0x50c]
mov eax, dword [ebp + 0x4a0]
push 0x101
push edi
push edi
push eax
mov dword [ebp + 0x510], edx
mov dword [ebp + 0x50c], edi
call esi
mov eax, dword [0x5bda24]
cmp eax, edi
je 0x4894ea
mov ecx, dword [ebp + 0x4a0]
push edi
push 0xfffffffffffffffc
push ecx
push 0x800a
call eax
mov edx, dword [ebp + 0x5c4]
mov eax, dword [ebp + 0x558]
push 0x101
push edi
push edi
push eax
mov dword [ebp + 0x5c8], edx
mov dword [ebp + 0x5c4], edi
call esi
mov eax, dword [0x5bda24]
cmp eax, edi
je 0x489526
mov ecx, dword [ebp + 0x558]
push edi
push 0xfffffffffffffffc
push ecx
push 0x800a
call eax
mov edx, dword [ebp + 0x67c]
mov eax, dword [ebp + 0x610]
push 0x101
push edi
push edi
push eax
mov dword [ebp + 0x680], edx
mov dword [ebp + 0x67c], edi
call esi
mov eax, dword [0x5bda24]
cmp eax, edi
je 0x489562
mov ecx, dword [ebp + 0x610]
push edi
push 0xfffffffffffffffc
push ecx
push 0x800a
call eax
mov edx, dword [ebp + 0x734]
mov eax, dword [ebp + 0x6c8]
push 0x101
push edi
push edi
push eax
mov dword [ebp + 0x738], edx
mov dword [ebp + 0x734], edi
call esi
mov eax, dword [0x5bda24]
cmp eax, edi
je 0x48959e
mov ecx, dword [ebp + 0x6c8]
push edi
push 0xfffffffffffffffc
push ecx
push 0x800a
call eax
mov edx, dword [ebp + 0x7ec]
mov eax, dword [ebp + 0x780]
push 0x101
push edi
push edi
push eax
mov dword [ebp + 0x7f0], edx
mov dword [ebp + 0x7ec], edi
call esi
mov eax, dword [0x5bda24]
cmp eax, edi
je 0x4895da
mov ecx, dword [ebp + 0x780]
push edi
push 0xfffffffffffffffc
push ecx
push 0x800a
call eax
mov edx, dword [ebp + 0x8a4]
mov eax, dword [ebp + 0x838]
push 0x101
push edi
push edi
push eax
mov dword [ebp + 0x8a8], edx
mov dword [ebp + 0x8a4], edi
call esi
mov eax, dword [0x5bda24]
cmp eax, edi
je 0x489616
mov ecx, dword [ebp + 0x838]
push edi
push 0xfffffffffffffffc
push ecx
push 0x800a
call eax
mov edx, dword [ebp + 0x1168]
lea ebx, [ebp + 0x88]
push ebx
lea esi, [ebp + 0xdbc]
push edx
call fcn.004b0830
push edi
push edi
push 0x400000
mov ecx, esi
mov dword [ebp + 0xe4c], 1
call fcn.00505350
call fcn.004b0bf0
mov eax, dword [ebp + 0x1170]
push ebx
lea esi, [ebp + 0xe58]
push eax
call fcn.004b0830
push edi
push edi
push 0x400000
mov ecx, esi
mov dword [ebp + 0xee8], 1
call fcn.00505350
call fcn.004b0bf0
cmp dword [ebp + 0x1238], edi
je 0x4897dc
lea esi, [ebp + 0xa40]
push edi
mov ecx, esi
call fcn.00505450
xor ecx, ecx
call fcn.004b1600
lea esi, [ebp + 0x988]
push edi
mov ecx, esi
call fcn.00505450
xor ecx, ecx
call fcn.004b1600
mov edx, dword [ebp + 0x1c4]
lea esi, [esp + 0x14]
mov dword [esp + 0x14], 1
call fcn.004826a0
cmp dword [esp + 0x14], edi
lea esi, [ebp + 0xef4]
push ebx
je 0x4896df
mov ecx, dword [ebp + 0x1180]
push ecx
jmp 0x4896e6
mov edx, dword [ebp + 0x1178]
push edx
call fcn.004b0830
push edi
push edi
push 0x400000
mov ecx, esi
mov dword [ebp + 0xf84], edi
call fcn.00505350
call fcn.004b0bf0
cmp dword [ebp + 0x123c], edi
jne 0x48980c
mov ecx, dword [ebp + 0x1c4]
lea eax, [esp + 0x14]
push eax
call fcn.00482700
lea ecx, [esp + 0x18]
push ecx
mov ecx, dword [ebp + 0x1c4]
call fcn.00482840
cmp dword [esp + 0x14], edi
jne 0x48977e
cmp dword [esp + 0x18], edi
jne 0x48977e
lea ebx, [ebp + 0xbb0]
push edi
mov ecx, ebx
call fcn.00505450
lea ecx, [ebp + 0xc68]
push edi
call fcn.00505450
lea esi, [ebp + 0xaf8]
xor ecx, ecx
call fcn.004b1600
xor ecx, ecx
mov esi, ebx
call fcn.004b1600
xor ecx, ecx
lea esi, [ebp + 0xc68]
call fcn.004b1600
jmp 0x48980c
lea esi, [ebp + 0xaf8]
mov ecx, 1
call fcn.004b1600
lea esi, [ebp + 0xbb0]
push 1
mov ecx, esi
call fcn.00505450
lea ebx, [ebp + 0xc68]
push 1
mov ecx, ebx
call fcn.00505450
cmp dword [esp + 0x14], edi
je 0x4897c7
mov ecx, 1
call fcn.004b1600
xor ecx, ecx
mov esi, ebx
call fcn.004b1600
jmp 0x48980c
xor ecx, ecx
call fcn.004b1600
mov ecx, 1
mov esi, ebx
call fcn.004b1600
jmp 0x48980c
mov edx, dword [ebp + 0x1178]
push ebx
lea esi, [ebp + 0xef4]
push edx
call fcn.004b0830
push edi
push edi
push 0x400000
mov ecx, esi
mov dword [ebp + 0xf84], 1
call fcn.00505350
call fcn.004b0bf0
mov eax, dword [ebp + 0x1178]
lea edi, [ebp + 0x88]
push edi
lea ebx, [ebp + 0xf90]
push eax
mov esi, ebx
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, ebx
mov dword [ebp + 0x1020], 1
call fcn.00505350
call fcn.004b0bf0
mov ecx, dword [ebp + 0x1178]
push edi
lea esi, [ebp + 0x102c]
push ecx
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, esi
mov dword [ebp + 0x10bc], 1
call fcn.00505350
call fcn.004b0bf0
mov edx, dword [ebp + 0x1188]
lea eax, [ebp + 0x88]
push eax
lea edi, [ebp + 0x10c8]
push edx
mov esi, edi
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, edi
mov dword [ebp + 0x1158], 1
call fcn.00505350
call fcn.004b0bf0
push 0
lea ecx, [ebp + 0x102c]
call fcn.00505414
push 0
mov ecx, ebx
call fcn.00505414
lea ecx, [ebp + 0xd20]
push 0
call fcn.00505414
cmp dword [ebp + 0x1d4], 0
je 0x489ba0
mov esi, dword [sym.imp.USER32.dll_GetWindowRect]
lea eax, [ebp + 0x5f0]
test eax, eax
je 0x489909
mov edx, dword [eax + 0x20]
lea ecx, [esp + 0x34]
push ecx
push edx
call esi
lea eax, [esp + 0x34]
push eax
mov ecx, ebp
call fcn.0050743c
lea eax, [ebp + 0x538]
test eax, eax
je 0x48992a
mov edx, dword [eax + 0x20]
lea ecx, [esp + 0x64]
push ecx
push edx
call esi
lea eax, [esp + 0x64]
push eax
mov ecx, ebp
call fcn.0050743c
lea eax, [ebp + 0x6a8]
test eax, eax
je 0x48994b
mov edx, dword [eax + 0x20]
lea ecx, [esp + 0x74]
push ecx
push edx
call esi
lea eax, [esp + 0x74]
push eax
mov ecx, ebp
call fcn.0050743c
lea eax, [ebp + 0x258]
test eax, eax
je 0x48996c
mov edx, dword [eax + 0x20]
lea ecx, [esp + 0x54]
push ecx
push edx
call esi
lea eax, [esp + 0x54]
push eax
mov ecx, ebp
call fcn.0050743c
lea eax, [ebp + 0xd20]
test eax, eax
je 0x48998d
mov edx, dword [eax + 0x20]
lea ecx, [esp + 0x1c]
push ecx
push edx
call esi
lea eax, [esp + 0x1c]
push eax
mov ecx, ebp
call fcn.0050743c
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x28]
sub edx, dword [esp + 0x20]
mov eax, dword [esp + 0x34]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x24]
sub ecx, dword [esp + 0x1c]
push 0x14
push edx
mov edx, dword [esp + 0x48]
push ecx
push edx
push eax
lea esi, [ebp + 0x102c]
push 0
mov ecx, esi
mov dword [esp + 0x30], eax
call fcn.00505623
mov eax, dword [esp + 0x28]
sub eax, dword [esp + 0x20]
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x24]
sub ecx, dword [esp + 0x1c]
sub edx, dword [esp + 0x38]
push 0x14
add edx, dword [esp + 0x18]
push eax
mov eax, dword [esp + 0x6c]
push ecx
push edx
push eax
push 0
mov ecx, ebx
call fcn.00505623
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
push 0x14
mov edx, eax
sub edx, ecx
push edx
mov edx, dword [esp + 0x2c]
sub edx, dword [esp + 0x24]
push edx
mov edx, dword [esp + 0x4c]
sub edx, dword [esp + 0x44]
lea edx, [edx + edx + 0xa]
sub edx, ecx
add edx, eax
add edx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
push edx
push eax
push 0
mov ecx, edi
call fcn.00505623
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
push 0x14
mov edx, eax
sub edx, ecx
push edx
mov edx, dword [esp + 0x2c]
sub edx, dword [esp + 0x24]
push edx
mov edx, dword [esp + 0x4c]
sub edx, dword [esp + 0x44]
lea edx, [edx + edx + 0xa]
sub edx, ecx
add edx, eax
add edx, dword [esp + 0x20]
mov eax, dword [esp + 0x60]
push edx
push eax
push 0
lea ecx, [ebp + 0xd20]
call fcn.00505623
push 0
lea ecx, [ebp + 0xe58]
call fcn.00505414
push 0
lea ecx, [ebp + 0xef4]
call fcn.00505414
push 0
lea ecx, [ebp + 0xdbc]
call fcn.00505414
mov ecx, dword [ebp + 0x117c]
lea eax, [ebp + 0x88]
push eax
push ecx
call fcn.004b0830
push 0
push 0
lea esi, [ebp + 0x102c]
push 0x400000
mov ecx, esi
mov dword [ebp + 0x10bc], 1
call fcn.00505350
call fcn.004b0bf0
mov edx, dword [ebp + 0x117c]
lea eax, [ebp + 0x88]
push eax
push edx
mov esi, ebx
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, ebx
mov dword [ebp + 0x1020], 1
call fcn.00505350
call fcn.004b0bf0
lea eax, [ebp + 0x88]
push eax
mov eax, dword [ebp + 0x1188]
push eax
mov esi, edi
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, edi
mov dword [ebp + 0x1158], 1
call fcn.00505350
call fcn.004b0bf0
mov ecx, dword [ebp + 0x1164]
lea eax, [ebp + 0x88]
push eax
push ecx
lea esi, [ebp + 0xd20]
call fcn.004b0830
push 0
push 0
lea esi, [ebp + 0xd20]
push 0x400000
mov ecx, esi
mov dword [ebp + 0xdb0], 1
call fcn.00505350
call fcn.004b0bf0
push 5
lea ecx, [ebp + 0x102c]
call fcn.00505414
push 5
mov ecx, ebx
call fcn.00505414
push 5
mov ecx, edi
call fcn.00505414
push 5
lea ecx, [ebp + 0xd20]
call fcn.00505414
cmp dword [ebp + 0x1238], 0
je 0x489e3e
lea eax, [ebp + 0x480]
test eax, eax
je 0x489bd2
mov eax, dword [eax + 0x20]
lea edx, [esp + 0x64]
push edx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
lea ecx, [esp + 0x64]
push ecx
mov ecx, ebp
call fcn.0050743c
lea ebx, [ebp + 0xef4]
test ebx, ebx
je 0x489bf7
mov eax, dword [ebx + 0x20]
lea edx, [esp + 0x54]
push edx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
lea ecx, [esp + 0x54]
push ecx
mov ecx, ebp
call fcn.0050743c
lea esi, [ebp + 0x6a8]
test esi, esi
je 0x489c1c
mov eax, dword [esi + 0x20]
lea edx, [esp + 0x74]
push edx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
lea ecx, [esp + 0x74]
push ecx
mov ecx, ebp
call fcn.0050743c
test edi, edi
je 0x489c41
mov eax, dword [edi + 0x20]
lea edx, [esp + 0x94]
push edx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
lea ecx, [esp + 0x94]
push ecx
mov ecx, ebp
call fcn.0050743c
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x70]
mov ecx, dword [esp + 0x64]
push 0x14
sub edx, eax
push edx
mov edx, dword [esp + 0x74]
sub edx, ecx
push edx
push eax
add ecx, 0x1e
push ecx
push 0
lea ecx, [ebp + 0x480]
call fcn.00505623
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x5c]
push 0x14
sub ecx, eax
push ecx
mov ecx, dword [esp + 0x5c]
sub edx, ecx
push edx
push eax
add ecx, 0x28
push ecx
push 0
mov ecx, ebx
call fcn.00505623
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x7c]
push 0x14
sub ecx, eax
push ecx
mov ecx, dword [esp + 0x7c]
sub edx, ecx
push edx
push eax
add ecx, 0x1e
push ecx
push 0
mov ecx, esi
call fcn.00505623
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0x9c]
push 0x14
sub ecx, eax
push ecx
mov ecx, dword [esp + 0x9c]
sub edx, ecx
push edx
push eax
add ecx, 0x28
push ecx
push 0
mov ecx, edi
call fcn.00505623
mov ebx, dword [sym.imp.USER32.dll_GetWindowRect]
lea esi, [ebp + 0x3c8]
test esi, esi
je 0x489d19
mov ecx, dword [esi + 0x20]
lea eax, [esp + 0xa4]
push eax
push ecx
call ebx
lea edx, [esp + 0xa4]
push edx
mov ecx, ebp
call fcn.0050743c
lea eax, [ebp + 0xe58]
test eax, eax
je 0x489d40
mov edx, dword [eax + 0x20]
lea ecx, [esp + 0x84]
push ecx
push edx
call ebx
lea eax, [esp + 0x84]
push eax
mov ecx, ebp
call fcn.0050743c
lea eax, [ebp + 0x310]
test eax, eax
je 0x489d61
mov edx, dword [eax + 0x20]
lea ecx, [esp + 0x44]
push ecx
push edx
call ebx
lea eax, [esp + 0x44]
push eax
mov ecx, ebp
call fcn.0050743c
lea ebx, [ebp + 0xdbc]
test ebx, ebx
je 0x489d86
mov edx, dword [ebx + 0x20]
lea ecx, [esp + 0x34]
push ecx
push edx
call dword [sym.imp.USER32.dll_GetWindowRect]
lea eax, [esp + 0x34]
push eax
mov ecx, ebp
call fcn.0050743c
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0xb0]
mov edx, dword [esp + 0xac]
push 0x14
sub ecx, eax
push ecx
mov ecx, dword [esp + 0xac]
sub edx, ecx
push edx
push eax
add ecx, 0xf
push ecx
push 0
mov ecx, esi
call fcn.00505623
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x8c]
push 0x14
sub ecx, eax
push ecx
mov ecx, dword [esp + 0x8c]
sub edx, ecx
push edx
push eax
add ecx, 0xa
push ecx
push 0
lea ecx, [ebp + 0xe58]
call fcn.00505623
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
push 0x14
sub ecx, eax
push ecx
mov ecx, dword [esp + 0x4c]
sub edx, ecx
push edx
push eax
add ecx, 0xf
push ecx
push 0
lea ecx, [ebp + 0x310]
call fcn.00505623
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x3c]
push 0x14
sub ecx, eax
push ecx
mov ecx, dword [esp + 0x3c]
sub edx, ecx
push edx
push eax
add ecx, 0xa
push ecx
push 0
mov ecx, ebx
call fcn.00505623
mov edx, dword [ebp + 0x1c4]
lea esi, [esp + 0x14]
mov dword [esp + 0x14], 0
call fcn.00482580
mov ecx, 1
cmp dword [esp + 0x14], ecx
jne 0x489f4e
cmp dword [ebp + 0x1d4], 0
jne 0x48a051
cmp dword [ebp + 0x1d8], 0
jne 0x48a051
cmp dword [ebp + 0x1238], 0
je 0x489e97
lea esi, [ebp + 0x8d0]
call fcn.004b1600
jmp 0x48a051
xor ecx, ecx
lea esi, [ebp + 0x760]
call fcn.004b1600
mov ecx, 1
lea esi, [ebp + 0x818]
call fcn.004b1600
mov eax, dword [ebp + 0x116c]
lea ebx, [ebp + 0x88]
push ebx
push eax
lea esi, [ebp + 0xdbc]
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, esi
mov dword [ebp + 0xe4c], 1
call fcn.00505350
mov ecx, dword [ebp + 0x1174]
push ebx
push ecx
lea esi, [ebp + 0xe58]
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, esi
mov dword [ebp + 0xee8], 1
call fcn.00505350
mov edx, dword [ebp + 0x117c]
push ebx
push edx
lea esi, [ebp + 0xef4]
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, esi
mov dword [ebp + 0xf84], 1
call fcn.00505350
mov eax, dword [ebp + 0x1188]
push ebx
push eax
jmp 0x48a030
cmp dword [ebp + 0x1d4], 0
jne 0x48a051
cmp dword [ebp + 0x1d8], 0
jne 0x48a051
cmp dword [ebp + 0x1238], 0
je 0x489f83
lea esi, [ebp + 0x8d0]
xor ecx, ecx
call fcn.004b1600
jmp 0x48a051
lea esi, [ebp + 0x760]
call fcn.004b1600
xor ecx, ecx
lea esi, [ebp + 0x818]
call fcn.004b1600
mov ecx, dword [ebp + 0x1168]
lea ebx, [ebp + 0x88]
push ebx
push ecx
lea esi, [ebp + 0xdbc]
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, esi
mov dword [ebp + 0xe4c], 1
call fcn.00505350
mov edx, dword [ebp + 0x1170]
push ebx
push edx
lea esi, [ebp + 0xe58]
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, esi
mov dword [ebp + 0xee8], 1
call fcn.00505350
mov eax, dword [ebp + 0x1178]
push ebx
push eax
lea esi, [ebp + 0xef4]
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, esi
mov dword [ebp + 0xf84], 1
call fcn.00505350
mov ecx, dword [ebp + 0x1188]
push ebx
push ecx
mov esi, edi
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, edi
mov dword [ebp + 0x1158], 1
call fcn.00505350
cmp dword [ebp + 0x1238], 0
je 0x48a086
lea esi, [ebp + 0xa40]
push 0
mov ecx, esi
call fcn.00505450
xor ecx, ecx
call fcn.004b1600
lea esi, [ebp + 0x988]
push 0
mov ecx, esi
call fcn.00505450
xor ecx, ecx
call fcn.004b1600
mov ecx, dword [ebp + 0x1c4]
call fcn.00482410
cmp dword [ebp + 0x1d4], 0
mov dword [esp + 0x18], eax
je 0x48a799
test eax, eax
je 0x48a0ca
cmp eax, 5
je 0x48a784
cmp eax, 4
jne 0x48a115
mov edx, dword [ebp + 0x1c0]
test dword [edx + 0x1c8], 0x80000
jne 0x48a784
mov ecx, 1
lea esi, [ebp + 0x258]
call fcn.004b1600
mov ecx, ebp
call fcn.0048ae00
push 0x50
mov dword [ebp + 0x1210], ebp
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x30], eax
test eax, eax
mov dword [esp + 0xd0], 1
je 0x48abd2
push eax
call fcn.004b8800
mov edi, eax
jmp 0x48abd4
cmp eax, 3
jne 0x48a0ca
xor eax, eax
mov edi, dword [ebp + 0x1c4]
push 1
push 0x569f78
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
call fcn.004b95c0
test eax, eax
je 0x48a71a
mov edi, dword [ebp + 0x1c4]
push 1
push 0x569fc8
lea ecx, [esp + 0x8c]
call fcn.004b95c0
test eax, eax
je 0x48a71a
mov edi, dword [ebp + 0x1c4]
push 1
push 0x56a004
lea ecx, [esp + 0xac]
call fcn.004b95c0
test eax, eax
je 0x48a71a
mov edi, dword [ebp + 0x1c4]
push 1
push 0x569f8c
lea ecx, [esp + 0x4c]
call fcn.004b95c0
test eax, eax
je 0x48a71a
mov edi, dword [ebp + 0x1c4]
push 1
push 0x569fdc
lea ecx, [esp + 0x9c]
call fcn.004b95c0
test eax, eax
je 0x48a71a
mov edi, dword [ebp + 0x1c4]
push 1
push 0x56a018
lea ecx, [esp + 0x7c]
call fcn.004b95c0
test eax, eax
je 0x48a71a
mov edi, dword [ebp + 0x1c4]
push 1
push 0x569fa0
lea ecx, [esp + 0x3c]
call fcn.004b95c0
test eax, eax
je 0x48a71a
mov edi, dword [ebp + 0x1c4]
push 1
push 0x569ff0
lea ecx, [esp + 0x5c]
call fcn.004b95c0
test eax, eax
je 0x48a71a
mov edi, dword [ebp + 0x1c4]
push 1
push 0x56a02c
lea ecx, [esp + 0x6c]
call fcn.004b95c0
test eax, eax
je 0x48a71a
mov eax, dword [esp + 0x8c]
mov edx, dword [esp + 0x24]
cmp edx, dword [esp + 0xac]
mov ecx, dword [esp + 0x4c]
mov esi, dword [esp + 0x5c]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0xb4], edx
mov dword [esp + 0xbc], ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x30], esi
mov dword [esp + 0x18], 0
jne 0x48a521
cmp ecx, dword [esp + 0x7c]
jne 0x48a521
cmp eax, dword [esp + 0x6c]
jne 0x48a521
cmp edx, 4
mov esi, dword [esp + 0xb0]
mov edi, dword [esp + 0x28]
jb 0x48a384
jmp 0x48a370
mov eax, dword [edi]
cmp eax, dword [esi]
jne 0x48a388
sub edx, 4
add esi, 4
add edi, 4
cmp edx, 4
jae 0x48a370
test edx, edx
je 0x48a3e5
movzx ebx, byte [esi]
movzx eax, byte [edi]
sub eax, ebx
jne 0x48a3d7
sub edx, 1
add esi, 1
add edi, 1
test edx, edx
je 0x48a3e5
movzx ebx, byte [esi]
movzx eax, byte [edi]
sub eax, ebx
jne 0x48a3d7
sub edx, 1
add esi, 1
add edi, 1
test edx, edx
je 0x48a3e5
movzx ebx, byte [esi]
movzx eax, byte [edi]
sub eax, ebx
jne 0x48a3d7
sub edx, 1
add esi, 1
add edi, 1
test edx, edx
je 0x48a3e5
movzx edx, byte [esi]
movzx eax, byte [edi]
sub eax, edx
je 0x48a3e5
test eax, eax
mov edx, 1
jg 0x48a3e7
or edx, 0xffffffff
jmp 0x48a3e7
xor edx, edx
test edx, edx
jne 0x48a521
cmp ecx, 4
mov edx, dword [esp + 0x80]
mov esi, dword [esp + 0x50]
jb 0x48a414
nop
mov eax, dword [esi]
cmp eax, dword [edx]
jne 0x48a418
sub ecx, 4
add edx, 4
add esi, 4
cmp ecx, 4
jae 0x48a400
test ecx, ecx
je 0x48a475
movzx edi, byte [esi]
movzx eax, byte [edx]
sub edi, eax
jne 0x48a467
sub ecx, 1
add edx, 1
add esi, 1
test ecx, ecx
je 0x48a475
movzx edi, byte [esi]
movzx eax, byte [edx]
sub edi, eax
jne 0x48a467
sub ecx, 1
add edx, 1
add esi, 1
test ecx, ecx
je 0x48a475
movzx edi, byte [esi]
movzx eax, byte [edx]
sub edi, eax
jne 0x48a467
sub ecx, 1
add edx, 1
add esi, 1
test ecx, ecx
je 0x48a475
movzx edi, byte [esi]
movzx ecx, byte [edx]
sub edi, ecx
je 0x48a475
test edi, edi
mov eax, 1
jg 0x48a477
or eax, 0xffffffff
jmp 0x48a477
xor eax, eax
test eax, eax
jne 0x48a521
mov eax, dword [esp + 0x3c]
cmp eax, 4
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x40]
jb 0x48a4a4
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x48a4a8
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x48a490
test eax, eax
je 0x48a505
movzx edi, byte [ecx]
movzx esi, byte [edx]
sub esi, edi
jne 0x48a4f7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x48a505
movzx edi, byte [ecx]
movzx esi, byte [edx]
sub esi, edi
jne 0x48a4f7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x48a505
movzx edi, byte [ecx]
movzx esi, byte [edx]
sub esi, edi
jne 0x48a4f7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x48a505
movzx eax, byte [ecx]
movzx esi, byte [edx]
sub esi, eax
je 0x48a505
test esi, esi
mov eax, 1
jg 0x48a507
or eax, 0xffffffff
jmp 0x48a507
xor eax, eax
test eax, eax
jne 0x48a521
lea ecx, [eax + 1]
lea esi, [ebp + 0x538]
call fcn.004b1600
mov dword [esp + 0x18], 1
mov eax, dword [esp + 0xb4]
cmp eax, dword [esp + 0xc0]
jne 0x48a713
mov edi, dword [esp + 0xbc]
cmp edi, dword [esp + 0xb8]
jne 0x48a713
mov ecx, dword [esp + 0x14]
cmp ecx, dword [esp + 0x30]
jne 0x48a713
cmp eax, 4
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x28]
jb 0x48a57b
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x48a57f
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x48a567
test eax, eax
je 0x48a5dc
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x48a5ce
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x48a5dc
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x48a5ce
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x48a5dc
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x48a5ce
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x48a5dc
movzx esi, byte [edx]
movzx edx, byte [ecx]
sub esi, edx
je 0x48a5dc
test esi, esi
mov eax, 1
jg 0x48a5de
or eax, 0xffffffff
jmp 0x48a5de
xor eax, eax
test eax, eax
jne 0x48a713
cmp edi, 4
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0x50]
mov eax, edi
jb 0x48a60c
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x48a610
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x48a5f8
test eax, eax
je 0x48a66d
movzx edi, byte [ecx]
movzx esi, byte [edx]
sub esi, edi
jne 0x48a65f
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x48a66d
movzx edi, byte [ecx]
movzx esi, byte [edx]
sub esi, edi
jne 0x48a65f
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x48a66d
movzx edi, byte [ecx]
movzx esi, byte [edx]
sub esi, edi
jne 0x48a65f
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x48a66d
movzx eax, byte [ecx]
movzx esi, byte [edx]
sub esi, eax
je 0x48a66d
test esi, esi
mov eax, 1
jg 0x48a66f
or eax, 0xffffffff
jmp 0x48a66f
xor eax, eax
test eax, eax
jne 0x48a713
mov eax, dword [esp + 0x14]
cmp eax, 4
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x40]
jb 0x48a69c
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x48a6a0
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x48a688
test eax, eax
je 0x48a6fd
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x48a6ef
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x48a6fd
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x48a6ef
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x48a6fd
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x48a6ef
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x48a6fd
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x48a6fd
test esi, esi
mov eax, 1
jg 0x48a6ff
or eax, 0xffffffff
jmp 0x48a6ff
xor eax, eax
test eax, eax
jne 0x48a713
lea ecx, [eax + 1]
lea esi, [ebp + 0x5f0]
call fcn.004b1600
jmp 0x48a731
cmp dword [esp + 0x18], 0
jne 0x48a731
mov ecx, 1
lea esi, [ebp + 0x258]
call fcn.004b1600
mov ecx, ebp
call fcn.0048ae00
mov esi, dword [sym.imp.ole32.dll_PropVariantClear]
lea edx, [esp + 0x1c]
push edx
call esi
lea eax, [esp + 0x84]
push eax
call esi
lea ecx, [esp + 0xa4]
push ecx
call esi
lea edx, [esp + 0x44]
push edx
call esi
lea eax, [esp + 0x94]
push eax
call esi
lea ecx, [esp + 0x74]
push ecx
call esi
lea edx, [esp + 0x34]
push edx
call esi
lea eax, [esp + 0x54]
push eax
call esi
lea ecx, [esp + 0x64]
push ecx
call esi
jmp 0x48a0e1
mov ecx, 1
lea esi, [ebp + 0x6a8]
call fcn.004b1600
jmp 0x48a0e1
cmp dword [ebp + 0x1d8], 0
je 0x48a8e9
test eax, eax
je 0x48a80a
cmp eax, 1
jne 0x48a7c0
mov ecx, eax
lea esi, [ebp + 0x310]
call fcn.004b1600
push 1
jmp 0x48a823
cmp eax, 2
jne 0x48a7d7
lea ecx, [eax - 1]
lea esi, [ebp + 0x3c8]
call fcn.004b1600
push 1
jmp 0x48a823
cmp eax, 3
jne 0x48a7ee
lea ecx, [eax - 2]
lea esi, [ebp + 0x480]
call fcn.004b1600
push 1
jmp 0x48a823
cmp eax, 4
jne 0x48a80a
lea ecx, [eax - 3]
lea esi, [ebp + 0x6a8]
call fcn.004b1600
mov ecx, ebp
call fcn.0048cbd0
jmp 0x48a821
mov ecx, 1
lea esi, [ebp + 0x258]
call fcn.004b1600
mov ecx, ebp
call fcn.0048ae00
push 0
mov esi, dword [ebp + 0x1c4]
call fcn.004825e0
mov edx, dword [ebp + 0x116c]
lea ebx, [ebp + 0x88]
push ebx
push edx
lea esi, [ebp + 0xdbc]
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, esi
mov dword [ebp + 0xe4c], 1
call fcn.00505350
mov eax, dword [ebp + 0x1174]
push ebx
push eax
lea esi, [ebp + 0xe58]
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, esi
mov dword [ebp + 0xee8], 1
call fcn.00505350
mov ecx, dword [ebp + 0x117c]
push ebx
push ecx
lea esi, [ebp + 0xef4]
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, esi
mov dword [ebp + 0xf84], 1
call fcn.00505350
mov edx, dword [ebp + 0x1188]
push ebx
push edx
mov esi, edi
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, edi
mov dword [ebp + 0x1158], 1
call fcn.00505350
jmp 0x48a0e1
cmp dword [ebp + 0x1238], 0
je 0x48ab5e
mov eax, dword [ebp + 0x1168]
lea ebx, [ebp + 0x88]
push ebx
push eax
lea esi, [ebp + 0xdbc]
call fcn.004b0830
push 0
push 0
push 0x400000
lea ecx, [ebp + 0xdbc]
mov dword [ebp + 0xe4c], 0
call fcn.00505350
mov ecx, dword [ebp + 0x1170]
push ebx
push ecx
lea esi, [ebp + 0xe58]
call fcn.004b0830
push 0
push 0
push 0x400000
lea ecx, [ebp + 0xe58]
mov dword [ebp + 0xee8], 0
call fcn.00505350
mov edx, dword [ebp + 0x1188]
push ebx
push edx
mov esi, edi
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, edi
mov dword [ebp + 0x1158], 0
call fcn.00505350
cmp dword [esp + 0x18], 0
je 0x48a0ca
mov eax, dword [esp + 0x18]
cmp eax, 1
jne 0x48a9dd
mov eax, dword [ebp + 0x116c]
push ebx
push eax
lea esi, [ebp + 0xdbc]
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, esi
mov dword [ebp + 0xe4c], 0
call fcn.00505350
lea esi, [ebp + 0x310]
mov ecx, 1
call fcn.004b1600
jmp 0x48a0e1
cmp eax, 2
jne 0x48aa24
mov ecx, dword [ebp + 0x1174]
push ebx
push ecx
lea esi, [ebp + 0xe58]
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, esi
mov dword [ebp + 0xee8], 0
call fcn.00505350
lea esi, [ebp + 0x3c8]
mov ecx, 1
call fcn.004b1600
jmp 0x48a0e1
cmp eax, 3
jne 0x48ab03
lea edi, [ebp + 0xa40]
push 1
mov ecx, edi
call fcn.00505450
mov ecx, 1
mov esi, edi
call fcn.004b1600
mov edx, dword [ebp + 0x1c4]
lea esi, [esp + 0x18]
mov dword [esp + 0x18], 1
call fcn.00482640
cmp dword [esp + 0x18], 0
mov esi, edi
je 0x48aa6f
mov ecx, 1
jmp 0x48aa71
xor ecx, ecx
call fcn.004b1600
lea edi, [ebp + 0x988]
push 1
mov ecx, edi
call fcn.00505450
mov ecx, 1
mov esi, edi
call fcn.004b1600
mov edx, dword [ebp + 0x1c4]
lea esi, [esp + 0x18]
mov dword [esp + 0x18], 1
call fcn.004826a0
cmp dword [esp + 0x18], 0
mov esi, edi
je 0x48aac5
mov ecx, 1
call fcn.004b1600
mov edx, dword [ebp + 0x1184]
push ebx
push edx
jmp 0x48aad4
xor ecx, ecx
call fcn.004b1600
mov eax, dword [ebp + 0x117c]
push ebx
push eax
lea esi, [ebp + 0xef4]
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, esi
mov dword [ebp + 0xf84], 0
call fcn.00505350
call fcn.004b0bf0
jmp 0x48ab9a
cmp eax, 4
jne 0x48a0ca
mov ecx, dword [ebp + 0x118c]
push ebx
push ecx
call fcn.004b0830
push 0
push 0
push 0x400000
mov ecx, edi
mov dword [ebp + 0x1158], 0
call fcn.00505350
lea esi, [ebp + 0x8d0]
push 0
mov ecx, esi
call fcn.00505450
xor ecx, ecx
call fcn.004b1600
lea esi, [ebp + 0x6a8]
mov ecx, 1
call fcn.004b1600
jmp 0x48a0e1
test eax, eax
je 0x48a0ca
cmp eax, 1
jne 0x48ab7d
mov ecx, eax
lea esi, [ebp + 0x310]
call fcn.004b1600
jmp 0x48a0e1
cmp eax, 2
jne 0x48ab95
lea ecx, [eax - 1]
lea esi, [ebp + 0x3c8]
call fcn.004b1600
jmp 0x48a0e1
cmp eax, 3
jne 0x48abaf
lea esi, [ebp + 0x480]
mov ecx, 1
call fcn.004b1600
jmp 0x48a0e1
cmp eax, 4
jne 0x48a0ca
lea ecx, [eax - 3]
lea esi, [ebp + 0x6a8]
call fcn.004b1600
mov ecx, ebp
call fcn.0048cbd0
jmp 0x48a0e1
xor edi, edi
test edi, edi
mov dword [esp + 0xd0], 0xffffffff
je 0x48ac76
cmp dword [ebp + 0x1238], 0
je 0x48ac76
call fcn.004238d0
mov ebx, eax
test ebx, ebx
je 0x48856f
push 0
lea edx, [ebx + 0x1a5c]
push edx
call fcn.004ab290
mov ecx, ebx
mov esi, eax
call fcn.00422340
test esi, esi
je 0x48ac76
push ecx
lea eax, [esi + 0x14]
mov ecx, esp
mov dword [esp + 0x34], esp
push eax
call fcn.00402360
mov ecx, edi
call fcn.004b89f0
push ecx
add esi, 0x1c
mov ecx, esp
mov dword [esp + 0x34], esp
push esi
call fcn.00402360
mov ecx, edi
call fcn.004b81e0
cmp dword [ebp + 0x123c], 0
jne 0x48ac76
push edi
mov ecx, 0x569d48
call fcn.004b8250
push edi
mov ecx, 0x569d5c
call fcn.004b8250
lea ecx, [ebp + 0x11e4]
call fcn.004ac280
push 0x50
mov dword [ebp + 0x11bc], ebp
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x30], eax
test eax, eax
mov dword [esp + 0xd0], 2
je 0x48aca3
push eax
call fcn.004b8800
mov edi, eax
jmp 0x48aca5
xor edi, edi
test edi, edi
mov dword [esp + 0xd0], 0xffffffff
je 0x48ad78
push ecx
mov ecx, dword [ebp + 0x1c4]
mov edx, dword [ecx + 0x2c]
mov eax, dword [edx + 0x14]
sub eax, 0x10
mov dword [esp + 0x34], esp
mov esi, esp
push eax
call fcn.00402380
add eax, 0x10
add esp, 4
mov ecx, edi
mov dword [esi], eax
call fcn.004b89f0
mov eax, dword [ebp + 0x1c4]
push ecx
mov ecx, dword [eax + 0x2c]
mov eax, dword [ecx + 0x1c]
sub eax, 0x10
mov dword [esp + 0x34], esp
mov esi, esp
push eax
call fcn.00402380
add eax, 0x10
add esp, 4
mov ecx, edi
mov dword [esi], eax
call fcn.004b81e0
push edi
mov ecx, 0x569f64
call fcn.004b8250
push edi
mov ecx, 0x569f78
call fcn.004b8250
push edi
mov ecx, 0x569f8c
call fcn.004b8250
push edi
mov ecx, 0x569fa0
call fcn.004b8250
cmp dword [ebp + 0x1238], 0
je 0x48ad6d
push edi
mov ecx, 0x569e4c
call fcn.004b8250
push edi
mov ecx, 0x569fb4
call fcn.004b8250
cmp dword [ebp + 0x1238], 0
je 0x48ad6d
push edi
mov ecx, 0x569e38
call fcn.004b8250
lea ecx, [ebp + 0x1190]
call fcn.004ac280
mov edx, dword [ebp + 0x78]
mov eax, dword [edx]
add ebp, 0x78
push 0
push ebp
call eax
mov eax, 1
mov ecx, dword [esp + 0xc8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret