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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x5ed7b7
mov eax, dword fs:[0]
push eax
sub esp, 0x2c8
mov eax, dword [0x70b744]
xor eax, esp
mov dword [esp + 0x2c0], eax
push ebx
push esi
push edi
mov eax, dword [0x70b744]
xor eax, esp
push eax
lea eax, [esp + 0x2d8]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x10]
mov ebx, ecx
mov dword [esp + 0x28], eax
lea eax, [ebx + 0x4c4]
push eax
lea esi, [esp + 0x24]
call fcn.0044b496
xor edi, edi
mov dword [esp + 0x2e0], edi
cmp dword [esp + 0x20], edi
je case.0x552a59.104
movzx eax, word [ebp + 0xc]
mov ecx, 0xc8
cmp eax, ecx
jg case.0x552a59.104
je 0x553b3a
sub eax, 0x64
cmp eax, 0x10
ja case.0x552a59.104
jmp dword [eax*4 + 0x553b8e]
cmp byte [ebx + 0x504], 0
jne case.0x552a59.104
lea eax, [esp + 0x1f0]
push eax
call fcn.0044d777
lea eax, [ebx + 0x4f4]
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x2e4], 1
call fcn.00411742
mov byte [esp + 0x2e0], 2
mov esi, dword [ebx + 0x4ec]
mov eax, dword [esi]
push 0xffffffffffffffff
mov dword [esp + 0x1f4], eax
push edi
lea eax, [esi + 4]
push eax
lea ecx, [esp + 0x200]
call fcn.004106e6
mov eax, dword [esi + 0x20]
mov byte [esp + 0x2e0], 1
cmp byte [esp + 0x1c], 0
mov dword [esp + 0x210], eax
je 0x552ade
mov ecx, dword [esp + 0x18]
call fcn.0040df8b
mov eax, dword [esp + 0x1f0]
mov dword [esp + 0x34], eax
lea eax, [esp + 0x1d4]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
mov eax, dword [0x75dc8c]
mov ecx, 0x75dc8c
call dword [eax + 0xc]
add eax, 0x10
mov dword [esp + 0x28], eax
push edi
lea ecx, [esp + 0x1c]
mov byte [esp + 0x2e4], 3
call fcn.00443da5
push edi
push edi
push edi
lea eax, [esp + 0x1e0]
push eax
push edi
push 0x400
mov byte [esp + 0x2f8], 4
call dword [0x71f688]
cmp eax, edi
mov dword [esp + 0x3c], eax
jle 0x552b99
mov edi, eax
add edi, 2
xor ecx, ecx
push 2
pop edx
mov eax, edi
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004fed14
pop ecx
push eax
lea esi, [esp + 0x1c]
call fcn.00443dcb
push edi
xor esi, esi
push esi
push dword [esp + 0x20]
call fcn.00522720
add esp, 0xc
push dword [esp + 0x3c]
lea eax, [esp + 0x1d8]
push dword [esp + 0x1c]
push esi
push eax
push esi
push 0x400
call dword [0x71f688]
xor edi, edi
cmp dword [esp + 0x18], edi
mov eax, dword [esp + 0x1f8]
je 0x552bcf
cmp dword [esp + 0x20c], 8
jae 0x552bb7
lea eax, [esp + 0x1f8]
push eax
push dword [esp + 0x1c]
lea eax, [esp + 0x30]
push str._s:__s
call fcn.00448b91
add esp, 0xc
jmp 0x552bf1
cmp dword [esp + 0x20c], 8
jae 0x552be0
lea eax, [esp + 0x1f8]
push eax
push str.00:00:00:__s
lea eax, [esp + 0x30]
call fcn.00448b91
pop ecx
pop ecx
push dword [esp + 0x28]
lea esi, [ebx + 0x234]
mov eax, esi
call fcn.00448323
push 0x6a0e4c
mov eax, esi
call fcn.00448323
push edi
lea ecx, [esp + 0x1bc]
mov dword [esp + 0x1d4], 7
call fcn.00410c09
mov eax, dword [esp + 0x21c]
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x220]
push eax
lea ecx, [esp + 0x44]
call fcn.00411894
lea eax, [ebx + 0x48c]
mov ecx, dword [eax]
add eax, 4
mov dword [esp + 0x2c], ecx
push eax
lea ecx, [esp + 0x34]
call fcn.00411894
lea eax, [esp + 0x2c]
push eax
lea esi, [esp + 0xb8]
mov byte [esp + 0x2e4], 7
call fcn.0044b496
cmp dword [eax], edi
mov ecx, dword [esp + 0xb8]
setne byte [esp + 0x17]
cmp ecx, edi
je 0x552c8b
call fcn.004117b8
cmp byte [esp + 0x17], 0
je 0x552cf5
lea eax, [esp + 0x2c]
push eax
lea esi, [esp + 0x58]
call fcn.0044b496
mov byte [esp + 0x2e0], 8
mov eax, dword [eax]
lea ecx, [esp + 0xbc]
push ecx
mov ecx, eax
call fcn.005a806f
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x1c4]
mov byte [esp + 0x2ec], 9
call fcn.004106e6
push edi
push 1
lea ecx, [esp + 0xc4]
call fcn.00410779
mov byte [esp + 0x2e0], 7
mov ecx, dword [esp + 0x58]
cmp ecx, edi
je 0x552cf5
call fcn.004117b8
lea ecx, [esp + 0x30]
mov byte [esp + 0x2e0], 6
call fcn.00412117
cmp dword [esp + 0x34], 1
jne 0x552d7a
push edi
push edi
push edi
push edi
push 3
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x5c], esp
push dword [esp + 0x58]
call fcn.004120e9
sub esp, 0x1c
mov byte [esp + 0x32c], 0xa
lea eax, [esp + 0x204]
mov ecx, esp
mov dword [esp + 0x80], esp
push eax
call fcn.0041186e
lea ecx, [ebx - 0x58]
mov byte [esp + 0x32c], 6
call fcn.0054fbb9
mov eax, dword [ebx + 0x494]
cmp eax, edi
je 0x552d7a
mov eax, dword [eax + 0x784]
dec eax
jne 0x552d7a
push 0x3e9
push edi
push 0x10
push dword [ebx - 0x54]
call dword [0x71f7ac]
lea ecx, [esp + 0x40]
mov byte [esp + 0x2e0], 5
call fcn.00412117
push edi
push 1
lea ecx, [esp + 0x1c0]
call fcn.00410779
mov byte [esp + 0x2e0], 3
mov ecx, dword [esp + 0x1c]
cmp ecx, edi
je 0x552daf
call fcn.004117b8
mov eax, dword [esp + 0x28]
add eax, 0xfffffff0
call fcn.00410902
lea eax, [esp + 0x1f0]
push eax
mov byte [esp + 0x2e4], 0
call fcn.0044f499
or dword [esp + 0x2e0], 0xffffffff
mov ecx, dword [esp + 0x24]
cmp ecx, edi
je 0x552de5
call fcn.004117b8
xor eax, eax
inc eax
jmp 0x552f80
cmp byte [ebx + 0x504], 0
jne case.0x552a59.104
mov esi, dword [esp + 0x28]
push esi
lea ecx, [esp + 0x20]
mov dword [esp + 0x1c], esi
call fcn.004523d8
push esi
lea eax, [esp + 0x20]
push esi
push eax
call fcn.0040f6ca
add esp, 0xc
mov byte [esp + 0x2e0], 0xb
mov eax, dword [ebx + 0x5c]
lea esi, [ebx - 0x58]
mov dword [esp + 0x2c], esi
call fcn.005524f5
mov eax, dword [esp + 0x28]
add eax, 8
push eax
mov dword [esp + 0x38], eax
lea eax, [esp + 0x1bc]
push eax
call fcn.004486bd
mov byte [esp + 0x2e0], 0xc
mov esi, dword [esp + 0x18]
cmp dword [esi], edi
jle 0x552fa6
mov eax, dword [0x75dc8c]
mov ecx, 0x75dc8c
call dword [eax + 0xc]
add eax, 0x10
mov dword [esp + 0x3c], eax
mov byte [esp + 0x2e0], 0xd
push dword [esi]
lea edi, [esp + 0xdc]
call fcn.004af895
mov esi, eax
mov byte [esp + 0x2e4], 0xe
lea eax, [esp + 0x184]
mov dword [esp], 0x27e5
push eax
call fcn.004b9340
pop ecx
pop ecx
mov byte [esp + 0x2e0], 0xf
cmp dword [esi + 0x18], 8
jb 0x552ebc
mov esi, dword [esi + 4]
jmp 0x552ebf
add esi, 4
mov ecx, dword [esp + 0x34]
cmp dword [ecx + 0x18], 8
jb 0x552ece
mov ecx, dword [ecx + 4]
jmp 0x552ed1
add ecx, 4
cmp dword [eax + 0x18], 8
jb 0x552edc
mov eax, dword [eax + 4]
jmp 0x552edf
add eax, 4
push esi
push ecx
push eax
lea eax, [esp + 0x48]
call fcn.00448b91
add esp, 0xc
xor edi, edi
push edi
push 1
lea ecx, [esp + 0x188]
call fcn.00410779
push edi
push 1
lea ecx, [esp + 0xe0]
mov byte [esp + 0x2e8], 0xd
call fcn.00410779
mov ebx, dword [esp + 0x3c]
push edi
push edi
push edi
push edi
push 3
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x64], esp
push ebx
call fcn.004120e9
push 0x27d5
push dword [esp + 0x60]
call fcn.0054ffb6
lea eax, [ebx - 0x10]
call fcn.00410902
push edi
push 1
lea ecx, [esp + 0x1c0]
call fcn.00410779
mov byte [esp + 0x2e0], 0
mov ecx, dword [esp + 0x1c]
cmp ecx, edi
je case.0x552a59.104
call fcn.004117b8
or dword [esp + 0x2e0], 0xffffffff
mov ecx, dword [esp + 0x24]
cmp ecx, edi
je 0x552f7e
call fcn.004117b8
xor eax, eax
mov ecx, dword [esp + 0x2d8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x2c0]
xor ecx, esp
call fcn.0051d721
mov esp, ebp
pop ebp
ret 0x10
lea eax, [esp + 0xf4]
push 0x2756
push eax
call fcn.004b9340
pop ecx
pop ecx
push eax
lea ecx, [esp + 0x228]
mov byte [esp + 0x2e4], 0x10
call fcn.004241ee
xor esi, esi
push edi
inc esi
push esi
lea ecx, [esp + 0xfc]
mov byte [esp + 0x2e8], 0x12
call fcn.00410779
lea eax, [esp + 0x12c]
push eax
lea ecx, [esp + 0x1bc]
call fcn.0044a400
push eax
lea eax, [esp + 0x228]
push eax
mov byte [esp + 0x2e8], 0x13
call fcn.00405a7c
pop ecx
pop ecx
push edi
push esi
lea ecx, [esp + 0x134]
mov byte [esp + 0x2e8], 0x12
call fcn.00410779
push esi
push edi
push edi
push edi
sub esp, 0x1c
mov eax, esp
mov dword [esp + 0x58], esp
push eax
lea ecx, [esp + 0x254]
call fcn.0041f39e
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x58]
lea ecx, [esp + 0x224]
mov byte [esp + 0x2e0], 0xc
call fcn.00401441
push edi
push esi
lea ecx, [esp + 0x1c0]
call fcn.00410779
mov byte [esp + 0x2e0], 0
mov ecx, dword [esp + 0x1c]
cmp ecx, edi
je 0x553082
call fcn.004117b8
or dword [esp + 0x2e0], 0xffffffff
mov ecx, dword [esp + 0x24]
cmp ecx, edi
je 0x553097
call fcn.004117b8
mov eax, esi
jmp 0x552f80
cmp byte [ebx + 0x504], 0
jne case.0x552a59.104
lea eax, [ebx + 0x4dc]
push eax
lea ecx, [esp + 0x1c]
mov byte [ebx + 0x464], 0
mov byte [ebx + 0x507], 0
call fcn.00411742
mov byte [esp + 0x2e0], 0x14
cmp dword [ebx + 0x4d4], edi
jne 0x553169
push edi
push edi
lea eax, [ebx + 0x48c]
push eax
lea esi, [esp + 0x80]
call fcn.0044b496
sub esp, 0x1c
mov byte [esp + 0x304], 0x15
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x50], esp
push ecx
mov ecx, eax
call fcn.005a806f
push dword [ebx - 0x54]
lea eax, [esp + 0x8c]
push eax
call fcn.0056b8a1
add esp, 0x2c
mov byte [esp + 0x2e0], 0x16
mov ecx, dword [eax]
add eax, 4
mov dword [ebx + 0x4d4], ecx
push eax
lea ecx, [ebx + 0x4d8]
call fcn.00411788
mov byte [esp + 0x2e0], 0x15
mov ecx, dword [esp + 0x68]
cmp ecx, edi
je 0x553154
call fcn.004117b8
mov byte [esp + 0x2e0], 0x14
mov ecx, dword [esp + 0x78]
cmp ecx, edi
je 0x553169
call fcn.004117b8
push dword [ebx - 0x54]
mov eax, dword [ebx + 0x4d4]
push eax
call fcn.00449f7e
mov eax, dword [ebx + 0x4d4]
push 5
push dword [eax + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [ebx + 0x4d4]
call fcn.0056b14a
push edi
push dword [ebx - 0x54]
call dword [0x71f71c]
mov ebx, dword [ebx + 0x4d4]
cmp ebx, edi
je 0x5531ae
push ebx
call fcn.0056bd94
mov byte [esp + 0x2e0], 0
cmp byte [esp + 0x1c], 0
je 0x552dd0
mov ecx, dword [esp + 0x18]
call fcn.0040df8b
jmp 0x552dd0
cmp byte [ebx + 0x504], 0
jne case.0x552a59.104
mov esi, dword [esp + 0x28]
push esi
lea ecx, [esp + 0x20]
mov dword [esp + 0x1c], esi
call fcn.00452441
push esi
lea eax, [esp + 0x20]
push esi
push eax
call fcn.0040f6ca
add esp, 0xc
mov byte [esp + 0x2e0], 0x17
mov eax, dword [esp + 0x18]
cmp eax, edi
je 0x553237
lea ecx, [esp + 0x2c]
push ecx
lea ecx, [eax + 8]
push ecx
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x5c], esp
push ecx
lea ecx, [eax + 0xc]
mov dword [esp + 0x58], edi
call fcn.0044a400
add ebx, 0xffffffa8
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x10]
mov byte [esp + 0x2e0], 0
mov ecx, dword [esp + 0x1c]
cmp ecx, edi
je 0x552dd0
call fcn.004117b8
jmp 0x552dd0
mov eax, dword [ebx + 0x5c]
lea esi, [ebx - 0x58]
call fcn.005524f5
jmp case.0x552a59.104
cmp byte [ebx + 0x504], 0
jne case.0x552a59.104
mov eax, dword [ebx + 0x494]
lea esi, [esp + 0xa4]
call fcn.00449db2
push eax
lea esi, [esp + 0x70]
mov byte [esp + 0x2e4], 0x18
call fcn.0044b496
cmp dword [eax], edi
mov ecx, dword [esp + 0x70]
sete byte [esp + 0x17]
cmp ecx, edi
je 0x5532aa
call fcn.004117b8
lea ecx, [esp + 0xa8]
mov byte [esp + 0x2e0], 0
call fcn.00412117
cmp byte [esp + 0x17], 0
jne case.0x552a59.104
lea eax, [ebx + 0x4dc]
push eax
lea ecx, [esp + 0x1c]
call fcn.00411742
mov byte [esp + 0x2e0], 0x19
cmp dword [ebx + 0x4d4], edi
jne 0x55330a
mov byte [esp + 0x2e0], 0
cmp byte [esp + 0x1c], 0
je case.0x552a59.104
mov ecx, dword [esp + 0x18]
call fcn.0040df8b
jmp case.0x552a59.104
mov eax, dword [ebx + 0x494]
add eax, 0x718
push eax
lea ecx, [esp + 0x38]
call fcn.00411742
mov eax, dword [ebx + 0x494]
lea esi, [esp + 0x7c]
call fcn.00449db2
push eax
lea esi, [esp + 0x30]
call fcn.0044b496
lea ecx, [esp + 0x80]
mov byte [esp + 0x2e0], 0x1b
call fcn.00412117
mov eax, dword [esp + 0x2c]
cmp eax, edi
je 0x553394
mov ecx, dword [ebx + 0x4d4]
mov edx, dword [eax + 4]
mov dword [ecx + 0x7c], edx
mov ecx, dword [ebx + 0x4d4]
mov edx, dword [eax + 8]
mov esi, dword [eax + 0xc]
mov dword [ecx + 0xa0], edx
mov dword [ecx + 0xa4], esi
cmp byte [eax + 0x10], 0
je 0x553389
mov esi, dword [ebx + 0x4d4]
call fcn.00449de2
push dword [ebx + 0x4d4]
call fcn.0056bd94
mov byte [esp + 0x2e0], 0x1a
mov ecx, dword [esp + 0x30]
cmp ecx, edi
je 0x5533a9
call fcn.004117b8
mov byte [esp + 0x2e0], 0x19
cmp byte [esp + 0x38], 0
je 0x5531ae
mov ecx, dword [esp + 0x34]
call fcn.0040df8b
jmp 0x5531ae
push 2
push 2
lea eax, [ebx + 0x48c]
push eax
lea esi, [esp + 0x98]
mov byte [ebx + 0x507], 0
call fcn.0044b496
sub esp, 0x1c
mov byte [esp + 0x304], 0x1c
mov eax, dword [eax]
mov ecx, esp
mov dword [esp + 0x50], esp
push ecx
mov ecx, eax
call fcn.005a806f
push dword [ebx - 0x54]
lea eax, [esp + 0xac]
push eax
call fcn.0056b8a1
add esp, 0x2c
mov byte [esp + 0x2e0], 0x1d
mov ecx, dword [eax]
add eax, 4
mov dword [ebx + 0x4d4], ecx
push eax
lea ecx, [ebx + 0x4d8]
call fcn.00411788
mov byte [esp + 0x2e0], 0x1c
mov ecx, dword [esp + 0x88]
cmp ecx, edi
je 0x55344d
call fcn.004117b8
mov byte [esp + 0x2e0], 0
mov ecx, dword [esp + 0x90]
cmp ecx, edi
je 0x553465
call fcn.004117b8
push dword [ebx - 0x54]
mov eax, dword [ebx + 0x4d4]
push eax
call fcn.00449f7e
mov eax, dword [ebx + 0x4d4]
push 5
push dword [eax + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
push edi
push dword [ebx - 0x54]
call dword [0x71f71c]
jmp 0x552dd0
cmp byte [ebx + 0x504], 0
jne case.0x552a59.104
mov eax, dword [ebx + 0x494]
cmp eax, edi
je case.0x552a59.104
lea esi, [esp + 0x44]
call fcn.00449dca
push eax
lea esi, [esp + 0x98]
mov byte [esp + 0x2e4], 0x1e
call fcn.0044b496
cmp dword [eax], edi
mov ecx, dword [esp + 0x98]
sete byte [esp + 0x17]
cmp ecx, edi
je 0x5534e4
call fcn.004117b8
lea ecx, [esp + 0x48]
mov byte [esp + 0x2e0], 0
call fcn.00412117
cmp byte [esp + 0x17], 0
jne case.0x552a59.104
lea eax, [ebx + 0x4dc]
push eax
lea ecx, [esp + 0x40]
call fcn.00411742
mov byte [esp + 0x2e0], 0x1f
cmp dword [ebx + 0x4d4], edi
je 0x55371f
mov eax, dword [ebx + 0x494]
add eax, 0x764
push eax
lea ecx, [esp + 0x38]
call fcn.00411742
mov eax, dword [ebx + 0x494]
lea esi, [esp + 0xac]
call fcn.00449dca
push eax
lea esi, [esp + 0x1c]
call fcn.0044b496
lea ecx, [esp + 0xb0]
mov byte [esp + 0x2e0], 0x21
call fcn.00412117
mov esi, dword [esp + 0x18]
cmp esi, edi
je 0x5536f2
cmp dword [ebx + 0x4d4], edi
je 0x5536f2
sub esp, 0x1c
lea eax, [esi + 0x500]
mov ecx, esp
mov dword [esp + 0x48], esp
push eax
call fcn.0041186e
push dword [ebx + 0x4d4]
call fcn.0056b2e9
push dword [ebx + 0x4d4]
call fcn.0056bd94
cmp dword [esi + 0x51c], edi
je 0x5536f2
lea eax, [esp + 0x1b8]
push eax
lea ecx, [esi + 0x500]
mov byte [ebx + 0x507], 1
call fcn.004144f5
mov byte [esp + 0x2e0], 0x22
push dword [esi + 0x51c]
lea edi, [esp + 0x1d8]
call fcn.004af895
pop ecx
xor edi, edi
mov byte [esp + 0x2e0], 0x23
cmp dword [esi + 0x51c], edi
jne 0x55360c
lea eax, [esp + 0x1d4]
push eax
call fcn.00428544
mov eax, dword [0x75dc8c]
mov ecx, 0x75dc8c
call dword [eax + 0xc]
add eax, 0x10
mov dword [esp + 0x28], eax
lea eax, [esp + 0x164]
push 0x27ee
push eax
mov byte [esp + 0x2e8], 0x24
call fcn.004b9340
pop ecx
pop ecx
mov byte [esp + 0x2e0], 0x25
cmp dword [esp + 0x1ec], 8
mov edx, dword [esp + 0x1d8]
jae 0x55365c
lea edx, [esp + 0x1d8]
cmp dword [esp + 0x1d0], 8
mov ecx, dword [esp + 0x1bc]
jae 0x553674
lea ecx, [esp + 0x1bc]
cmp dword [eax + 0x18], 8
jb 0x55367f
mov eax, dword [eax + 4]
jmp 0x553682
add eax, 4
push edx
push ecx
push eax
lea eax, [esp + 0x34]
call fcn.00448b91
add esp, 0xc
xor esi, esi
push edi
inc esi
push esi
lea ecx, [esp + 0x16c]
mov byte [esp + 0x2e8], 0x24
call fcn.00410779
push esi
push edi
push edi
push 3
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push dword [esp + 0x54]
call fcn.004120e9
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x58]
mov eax, dword [esp + 0x28]
add eax, 0xfffffff0
call fcn.00410902
push edi
push esi
lea ecx, [esp + 0x1dc]
call fcn.00410779
push edi
push esi
lea ecx, [esp + 0x1c0]
call fcn.00410779
xor edi, edi
mov byte [esp + 0x2e0], 0x20
mov ecx, dword [esp + 0x1c]
cmp ecx, edi
je 0x553707
call fcn.004117b8
mov byte [esp + 0x2e0], 0x1f
cmp byte [esp + 0x38], 0
je 0x55371f
mov ecx, dword [esp + 0x34]
call fcn.0040df8b
mov byte [esp + 0x2e0], 0
cmp byte [esp + 0x40], 0
je 0x552dd0
mov ecx, dword [esp + 0x3c]
jmp 0x5531c5
cmp byte [ebx + 0x504], 0
jne case.0x552a59.104
lea eax, [ebx + 0x4dc]
push eax
lea ecx, [esp + 0x1c]
call fcn.00411742
mov byte [esp + 0x2e0], 0x26
mov eax, dword [ebx + 0x4d4]
cmp eax, edi
je 0x553790
push eax
call fcn.0056bd94
mov eax, dword [ebx + 0x4d4]
push dword [eax + 4]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x553790
mov eax, dword [ebx + 0x4d4]
push 1
call fcn.0056b1cd
mov eax, dword [ebx + 0x5c]
lea esi, [ebx - 0x58]
call fcn.005524f5
cmp byte [ebx + 0x507], 0
je 0x5531ae
push edi
push 3
push 0x27ef
push 0x27ce
push esi
call fcn.00550080
jmp 0x5531ae
cmp byte [ebx + 0x504], 0
jne case.0x552a59.104
mov eax, dword [ebx + 0x494]
cmp eax, edi
je case.0x552a59.104
lea esi, [esp + 0x5c]
call fcn.00449dca
push eax
lea esi, [esp + 0xa0]
mov byte [esp + 0x2e4], 0x27
call fcn.0044b496
cmp dword [eax], edi
mov ecx, dword [esp + 0xa0]
sete byte [esp + 0x17]
cmp ecx, edi
je 0x553810
call fcn.004117b8
lea ecx, [esp + 0x60]
mov byte [esp + 0x2e0], 0
call fcn.00412117
cmp byte [esp + 0x17], 0
jne case.0x552a59.104
lea eax, [ebx + 0x4dc]
push eax
lea ecx, [esp + 0x40]
call fcn.00411742
mov byte [esp + 0x2e0], 0x28
cmp dword [ebx + 0x4d4], edi
je 0x55371f
mov eax, dword [ebx + 0x494]
add eax, 0x764
push eax
lea ecx, [esp + 0x38]
call fcn.00411742
mov eax, dword [ebx + 0x494]
lea esi, [esp + 0x4c]
call fcn.00449dca
push eax
lea esi, [esp + 0x1c]
call fcn.0044b496
lea ecx, [esp + 0x50]
mov byte [esp + 0x2e0], 0x2a
call fcn.00412117
mov edi, dword [esp + 0x18]
test edi, edi
je 0x55398e
cmp dword [ebx + 0x4d4], 0
je 0x55398e
lea eax, [edi + 0x4e4]
lea edx, [edi + 0x4c8]
push eax
lea ecx, [esp + 0x1a0]
call fcn.0056f47f
sub esp, 0x18
mov byte [esp + 0x2fc], 0x2b
mov ecx, esp
mov dword [esp + 0x48], esp
push eax
call fcn.0041186e
push dword [ebx + 0x4d4]
call fcn.0056b2e9
push 0
push 1
lea ecx, [esp + 0x1a4]
mov byte [esp + 0x2e8], 0x2a
call fcn.00410779
mov eax, dword [ebx + 0x4d4]
mov ecx, dword [edi]
mov dword [eax + 0x80], ecx
mov eax, dword [ebx + 0x4d4]
mov ecx, dword [edi + 0x20]
mov edx, dword [edi + 0x24]
mov dword [eax + 0x98], ecx
mov dword [eax + 0x9c], edx
mov esi, dword [ebx + 0x494]
call fcn.005c71b7
dec eax
dec eax
je 0x553953
dec eax
jne 0x553983
mov ecx, dword [edi + 0x10]
mov edx, dword [edi + 0x14]
mov eax, dword [ebx + 0x4d4]
mov dword [eax + 0x88], ecx
mov dword [eax + 0x8c], edx
mov ecx, dword [edi + 8]
mov edi, dword [edi + 0xc]
jmp 0x553971
mov ecx, dword [edi + 8]
mov edx, dword [edi + 0xc]
mov eax, dword [ebx + 0x4d4]
mov dword [eax + 0x88], ecx
mov dword [eax + 0x8c], edx
mov ecx, dword [edi + 0x10]
mov edi, dword [edi + 0x14]
mov eax, dword [ebx + 0x4d4]
mov dword [eax + 0x94], edi
mov dword [eax + 0x90], ecx
push dword [ebx + 0x4d4]
call fcn.0056bd94
mov byte [esp + 0x2e0], 0x29
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x5539a3
call fcn.004117b8
mov byte [esp + 0x2e0], 0x28
cmp byte [esp + 0x38], 0
je 0x5539bb
mov ecx, dword [esp + 0x34]
call fcn.0040df8b
xor edi, edi
jmp 0x55371f
cmp byte [ebx + 0x504], 0
jne case.0x552a59.104
lea eax, [ebx + 0x4dc]
push eax
lea ecx, [esp + 0x1c]
call fcn.00411742
mov byte [esp + 0x2e0], 0x2c
mov eax, dword [ebx + 0x4d4]
cmp eax, edi
je 0x5531ae
push eax
call fcn.0056bd94
mov eax, dword [ebx + 0x4d4]
push dword [eax + 4]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x553a1b
mov eax, dword [ebx + 0x4d4]
push 1
call fcn.0056b1cd
mov eax, dword [ebx + 0x58]
lea esi, [ebx - 0x58]
call fcn.005524f5
mov eax, dword [ebx + 0x5c]
call fcn.005524f5
jmp 0x5531ae
mov esi, dword [esp + 0x28]
cmp byte [esi], 0
je 0x553a74
lea eax, [esp + 0x110]
push 0x2719
push eax
call fcn.004b9340
cmp dword [eax + 0x18], 8
pop ecx
pop ecx
jb 0x553a5b
mov eax, dword [eax + 4]
jmp 0x553a5e
add eax, 4
push eax
push dword [ebx + 0x400]
call dword [0x71f7c4]
lea ecx, [esp + 0x110]
jmp 0x553aaa
lea eax, [esp + 0x148]
push 0x271b
push eax
call fcn.004b9340
cmp dword [eax + 0x18], 8
pop ecx
pop ecx
jb 0x553a93
mov eax, dword [eax + 4]
jmp 0x553a96
add eax, 4
push eax
push dword [ebx + 0x400]
call dword [0x71f7c4]
lea ecx, [esp + 0x148]
push edi
push 1
call fcn.00410779
push esi
call fcn.0051d492
pop ecx
jmp 0x552dd0
sub esp, 0x1c
mov eax, esp
mov dword [esp + 0x48], esp
push 0x271c
push eax
call fcn.004b9340
sub esp, 0x14
mov byte [esp + 0x318], 0x2e
mov eax, esp
mov dword [esp + 0x6c], esp
push 0x2718
push eax
call fcn.004b9340
pop ecx
pop ecx
mov ecx, 0x7220d0
mov byte [esp + 0x318], 0
call fcn.004c4c6c
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x30]
jmp 0x552dd0
sub esp, 0x1c
mov eax, esp
mov dword [esp + 0x48], esp
push 0x271c
push eax
call fcn.004b9340
sub esp, 0x14
mov byte [esp + 0x318], 0x2f
mov eax, esp
mov dword [esp + 0x6c], esp
push 0x29f4
jmp 0x553ae8
cmp byte [ebx + 0x504], 0
jne case.0x552a59.104
lea eax, [ebx + 0x4dc]
push eax
lea ecx, [esp + 0x1c]
call fcn.00411742
lea eax, [ebx + 0x4d4]
mov byte [esp + 0x2e0], 0x2d
cmp dword [eax], edi
je 0x5531ae
mov dword [eax], edi
mov ecx, dword [eax + 4]
cmp ecx, edi
mov dword [eax + 4], edi
je 0x553b7e
call fcn.004117b8
push 1
push dword [ebx - 0x54]
call dword [0x71f71c]
jmp 0x5531ae