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

Disassembly:
push 0xffffffffffffffff
push 0x5713a1
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x158
push ebx
push ebp
push esi
push edi
mov dword [esp + 0x54], ecx
xor ebx, ebx
lea ecx, [esp + 0x3c]
mov dword [esp + 0x170], ebx
call fcn.00531800
mov dword [esp + 0x40], 0x572180
mov word [esp + 0x44], 0xffff
mov word [esp + 0x46], bx
lea ecx, [esp + 0xc8]
mov byte [esp + 0x170], 1
call fcn.00537910
lea eax, [esp + 0x178]
lea ecx, [esp + 0x28]
push eax
mov byte [esp + 0x174], 2
call fcn.00531810
mov cl, byte [esp + 0x13]
mov dword [esp + 0x30], ebx
mov byte [esp + 0x2c], cl
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov dl, byte [esp + 0x13]
mov dword [esp + 0x18], ebx
mov byte [esp + 0x14], dl
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov byte [esp + 0x170], 5
mov dword [esp + 0x48], ebx
mov byte [esp + 0x13], 1
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
push eax
push ecx
lea ecx, [esp + 0x34]
call fcn.00536820
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
push edx
push eax
lea ecx, [esp + 0x1c]
call fcn.00536820
mov ecx, dword [esp + 0x54]
sub esp, 0x10
mov esi, esp
mov dword [esp + 0x34], esp
mov dl, byte [ecx + 0x34]
lea edi, [ecx + 0x34]
push ebx
mov ecx, esi
mov byte [esi], dl
call fcn.00404bb0
mov eax, dword [0x57217c]
mov ecx, esi
push eax
push ebx
push edi
call fcn.004049b0
lea ecx, [esp + 0xd8]
call fcn.00537d20
cmp al, bl
je 0x54947c
lea ecx, [esp + 0x28]
lea edx, [esp + 0x68]
push ecx
push edx
lea ecx, [esp + 0xd0]
call fcn.00538230
mov esi, eax
lea eax, [esp + 0x14]
mov byte [esp + 0x170], 6
cmp eax, esi
je 0x548c31
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x548b2c
xor edi, edi
jmp 0x548b34
mov edi, dword [esi + 8]
sub edi, eax
sar edi, 2
lea ecx, [esp + 0x14]
call fcn.0040a310
cmp edi, eax
ja 0x548b7c
mov edx, dword [esp + 0x18]
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
push edx
push eax
push ecx
call fcn.00405350
mov ecx, dword [esp + 0x28]
add esp, 0xc
push ecx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404c00
mov ecx, esi
call fcn.0040a310
mov edx, dword [esp + 0x18]
lea eax, [edx + eax*4]
mov dword [esp + 0x1c], eax
jmp 0x548c31
mov ecx, esi
call fcn.0040a310
lea ecx, [esp + 0x14]
mov edi, eax
call fcn.0042ab70
cmp edi, eax
ja 0x548bda
mov edi, dword [esi + 4]
lea ecx, [esp + 0x14]
call fcn.0040a310
mov ecx, dword [esp + 0x18]
lea edi, [edi + eax*4]
mov eax, dword [esi + 4]
push ecx
push edi
push eax
call fcn.00405350
mov edx, dword [esp + 0x28]
mov eax, dword [esi + 8]
add esp, 0xc
lea ecx, [esp + 0x14]
push edx
push eax
push edi
call fcn.004052e0
mov ecx, esi
call fcn.0040a310
mov ecx, dword [esp + 0x18]
lea edx, [ecx + eax*4]
mov dword [esp + 0x1c], edx
jmp 0x548c31
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.00404c00
mov edx, dword [esp + 0x18]
push edx
call fcn.00556360
add esp, 4
mov ecx, esi
call fcn.0040a310
cmp eax, ebx
jge 0x548c07
xor eax, eax
shl eax, 2
push eax
call fcn.00556a96
add esp, 4
mov dword [esp + 0x18], eax
mov ecx, dword [esi + 8]
mov esi, dword [esi + 4]
push eax
push ecx
push esi
lea ecx, [esp + 0x20]
call fcn.004052e0
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x6c]
push ecx
push edx
lea ecx, [esp + 0x70]
mov byte [esp + 0x178], 5
call fcn.00404c00
mov eax, dword [esp + 0x6c]
push eax
call fcn.00556360
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
add esp, 4
cmp eax, ebx
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
je 0x5494e5
mov edx, ecx
sub edx, eax
test edx, 0xfffffffc
je 0x5494e5
lea ecx, [esp + 0xc8]
call fcn.00537f70
mov eax, dword [esp + 0x18]
push ebx
lea esi, [eax + 4]
mov ecx, esi
call fcn.00531ac0
mov dl, al
push 1
and edx, 0xff
mov ecx, esi
shl edx, 8
mov dword [esp + 0x28], edx
call fcn.00531ac0
mov edx, dword [esp + 0x24]
and eax, 0xff
add edx, eax
push 2
shl edx, 8
mov ecx, esi
mov dword [esp + 0x28], edx
call fcn.00531ac0
mov edx, dword [esp + 0x24]
and eax, 0xff
add edx, eax
push 3
shl edx, 8
mov ecx, esi
mov dword [esp + 0x28], edx
call fcn.00531ac0
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x18]
and eax, 0xff
push ebx
add ecx, eax
lea edi, [edx + 8]
mov ebp, ecx
mov ecx, edi
call fcn.00531ac0
movzx si, al
push 1
mov ecx, edi
shl esi, 8
call fcn.00531ac0
movzx ax, al
add esi, eax
cmp ebp, ebx
jbe 0x548f77
cmp byte [esp + 0x13], bl
je 0x548f77
mov edi, dword [esp + 0x54]
push ebp
mov ecx, edi
call fcn.00549950
test eax, eax
jne 0x548dd2
lea ecx, [edi + 0x14]
push 1
mov edx, dword [ecx]
mov dword [esp + 0xac], edx
mov eax, dword [ecx + 4]
mov dword [esp + 0xb0], eax
mov edx, dword [ecx + 8]
mov dword [esp + 0xb4], edx
mov eax, dword [ecx + 0xc]
lea ecx, [esp + 0x12c]
push ecx
lea ecx, [esp + 0xb0]
mov dword [esp + 0xbc], eax
call fcn.0054a410
mov esi, dword [eax + 8]
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push esi
call fcn.00531810
lea ecx, [esp + 0x40]
call fcn.005319b0
add esi, 4
lea ecx, [esp + 0x40]
push esi
call fcn.00549930
push ecx
lea edx, [esp + 0x40]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
call fcn.00531810
lea ecx, [esp + 0x2c]
call fcn.005319b0
mov ecx, edi
call fcn.0054a2c0
jmp 0x548a8f
cmp dword [edi + 0x30], ebx
je 0x548e06
push ebx
lea ecx, [esp + 0x18]
call fcn.0042ab20
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push eax
call fcn.00531810
push ebp
call dword [edi + 0x30]
add esp, 8
cmp ax, 0xffff
mov dword [esp + 0x48], eax
jne 0x548e15
mov byte [esp + 0x13], 1
jmp 0x548e33
mov dword [esp + 0x48], 0xffffffff
mov byte [esp + 0x13], 1
jmp 0x548e33
cmp ax, bx
jne 0x548ec8
cmp si, bx
jne 0x548ec8
mov dword [esp + 0x48], 0xffffffff
mov byte [esp + 0x13], bl
cmp dword [edi + 0x2c], ebx
je 0x549561
lea eax, [edi + 0x14]
push 1
mov ecx, dword [eax]
mov dword [esp + 0xbc], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0xc0], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0xc4], ecx
lea ecx, [esp + 0xbc]
mov edx, dword [eax + 0xc]
lea eax, [esp + 0x15c]
push eax
mov dword [esp + 0xcc], edx
call fcn.0054a410
mov esi, dword [eax + 8]
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push esi
call fcn.00531810
lea ecx, [esp + 0x40]
call fcn.005319b0
add esi, 4
lea ecx, [esp + 0x40]
push esi
call fcn.00549930
push ecx
lea edx, [esp + 0x40]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
call fcn.00531810
lea ecx, [esp + 0x2c]
call fcn.005319b0
mov ecx, edi
call fcn.0054a2c0
jmp 0x548a8f
cmp ax, 0xfffe
jne 0x548f7b
cmp dword [edi + 0x2c], ebx
je 0x549561
mov ecx, edi
call fcn.0054a2c0
cmp dword [edi + 0x2c], ebx
je 0x5494f4
lea eax, [edi + 0x14]
push 1
mov ecx, dword [eax]
mov dword [esp + 0x9c], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0xa0], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0xa4], ecx
lea ecx, [esp + 0x9c]
mov edx, dword [eax + 0xc]
lea eax, [esp + 0x14c]
push eax
mov dword [esp + 0xac], edx
call fcn.0054a410
mov esi, dword [eax + 8]
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push esi
call fcn.00531810
lea ecx, [esp + 0x40]
call fcn.005319b0
add esi, 4
lea ecx, [esp + 0x40]
push esi
call fcn.00549930
push ecx
lea edx, [esp + 0x40]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
call fcn.00531810
lea ecx, [esp + 0x2c]
call fcn.005319b0
mov ecx, edi
call fcn.0054a2c0
jmp 0x548a8f
mov edi, dword [esp + 0x54]
cmp si, bx
jne 0x549025
cmp dword [edi + 0x2c], ebx
je 0x549561
lea eax, [edi + 0x14]
push 1
mov ecx, dword [eax]
mov dword [esp + 0x8c], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x90], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0x94], ecx
lea ecx, [esp + 0x8c]
mov edx, dword [eax + 0xc]
lea eax, [esp + 0x13c]
push eax
mov dword [esp + 0x9c], edx
call fcn.0054a410
mov esi, dword [eax + 8]
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push esi
call fcn.00531810
lea ecx, [esp + 0x40]
call fcn.005319b0
add esi, 4
lea ecx, [esp + 0x40]
push esi
call fcn.00549930
push ecx
lea edx, [esp + 0x40]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
call fcn.00531810
lea ecx, [esp + 0x2c]
call fcn.005319b0
mov ecx, edi
mov dword [esp + 0x48], 0xffffffff
mov byte [esp + 0x13], bl
call fcn.0054a2c0
jmp 0x548a8f
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x50]
push eax
call fcn.00531810
push ecx
lea edx, [esp + 0x54]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
mov byte [esp + 0x178], 7
call fcn.00531810
mov ecx, dword [0x5c6628]
call fcn.00535e50
lea ecx, [esp + 0x4c]
call fcn.00531800
cmp si, bx
mov byte [esp + 0x170], 8
jbe 0x54908e
push 3
lea ecx, [esp + 0x18]
call fcn.0042ab20
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push eax
call fcn.00531810
lea ecx, [esp + 0x50]
call fcn.005319b0
lea ecx, [esp + 0x4c]
call fcn.00531b60
mov ebp, eax
mov eax, esi
and eax, 0xffff
jle 0x549107
xor esi, esi
mov dword [esp + 0x58], eax
lea ecx, [esp + 0x64]
call fcn.00531800
lea edi, [esi + 6]
mov byte [esp + 0x170], 9
cmp esi, edi
jge 0x5490d2
mov al, byte [esi + ebp]
lea ecx, [esp + 0x64]
push eax
call fcn.00531990
inc esi
cmp esi, edi
jl 0x5490c0
mov edx, dword [esp + 0x34]
lea ecx, [esp + 0x64]
push ecx
push edx
lea ecx, [esp + 0x34]
call fcn.00539230
lea ecx, [esp + 0x64]
mov byte [esp + 0x170], 8
call fcn.00531940
mov eax, dword [esp + 0x58]
mov esi, edi
dec eax
mov dword [esp + 0x58], eax
jne 0x5490a8
mov edi, dword [esp + 0x54]
mov al, byte [edi + 0x34]
sub esp, 0x10
lea ebp, [edi + 0x34]
mov esi, esp
mov dword [esp + 0x34], esp
push ebx
mov ecx, esi
mov byte [esi], al
call fcn.00404bb0
mov ecx, dword [0x57217c]
push ecx
push ebx
push ebp
mov ecx, esi
call fcn.004049b0
lea ecx, [esp + 0xd8]
call fcn.00537d20
cmp al, bl
je 0x549627
mov eax, dword [esp + 0x30]
cmp eax, ebx
jne 0x549150
xor ecx, ecx
jmp 0x549159
mov ecx, dword [esp + 0x34]
sub ecx, eax
sar ecx, 2
xor esi, esi
cmp ecx, ebx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x58], esi
jbe 0x549368
lea ecx, [esp + 0x60]
call fcn.00531800
mov edx, dword [esp + 0x30]
lea ecx, [esp + 0x78]
mov byte [esp + 0x170], 0xa
lea eax, [edx + esi*4]
push eax
push ecx
lea ecx, [esp + 0xd0]
call fcn.00538230
mov esi, eax
lea edx, [esp + 0x14]
mov byte [esp + 0x170], 0xb
cmp edx, esi
je 0x5492b5
mov ecx, esi
call fcn.0040a310
lea ecx, [esp + 0x14]
mov ebp, eax
call fcn.0040a310
cmp ebp, eax
ja 0x5491fc
mov edx, dword [esp + 0x18]
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
push edx
push eax
push ecx
call fcn.00405350
mov ecx, dword [esp + 0x28]
add esp, 0xc
push ecx
push eax
lea ecx, [esp + 0x1c]
call fcn.00404c00
mov ecx, esi
call fcn.0040a310
mov edx, dword [esp + 0x18]
lea eax, [edx + eax*4]
mov dword [esp + 0x1c], eax
jmp 0x5492b5
mov ecx, esi
call fcn.0040a310
lea ecx, [esp + 0x14]
mov ebp, eax
call fcn.0042ab70
cmp ebp, eax
ja 0x54925e
mov edi, dword [esi + 4]
lea ecx, [esp + 0x14]
call fcn.0040a310
mov ecx, dword [esp + 0x18]
lea edi, [edi + eax*4]
mov eax, dword [esi + 4]
push ecx
push edi
push eax
call fcn.00405350
mov edx, dword [esp + 0x28]
mov eax, dword [esi + 8]
add esp, 0xc
lea ecx, [esp + 0x14]
push edx
push eax
push edi
call fcn.004052e0
mov ecx, esi
call fcn.0040a310
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0x54]
lea edx, [ecx + eax*4]
mov dword [esp + 0x1c], edx
jmp 0x5492b5
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.00404c00
mov edx, dword [esp + 0x18]
push edx
call fcn.00556360
add esp, 4
mov ecx, esi
call fcn.0040a310
cmp eax, ebx
jge 0x54928b
xor eax, eax
shl eax, 2
push eax
call fcn.00556a96
add esp, 4
mov dword [esp + 0x18], eax
mov ecx, dword [esi + 8]
mov esi, dword [esi + 4]
push eax
push ecx
push esi
lea ecx, [esp + 0x20]
call fcn.004052e0
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x7c]
push ecx
push edx
lea ecx, [esp + 0x80]
mov byte [esp + 0x178], 0xa
call fcn.00404c00
mov eax, dword [esp + 0x7c]
push eax
call fcn.00556360
add esp, 4
lea ecx, [esp + 0x14]
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x80], ebx
mov dword [esp + 0x84], ebx
call fcn.0040a310
test eax, eax
je 0x54970d
push ebx
lea ecx, [esp + 0x18]
call fcn.0042ab20
push ecx
mov ecx, esp
mov dword [esp + 0x60], esp
push eax
call fcn.00531810
lea ecx, [esp + 0x64]
call fcn.005319b0
push ecx
lea edx, [esp + 0x64]
mov ecx, esp
mov dword [esp + 0x60], esp
push edx
call fcn.00531810
mov ecx, dword [0x5c6628]
call fcn.00536090
lea ecx, [esp + 0x60]
mov byte [esp + 0x170], 8
call fcn.00531940
mov esi, dword [esp + 0x58]
mov eax, dword [esp + 0x24]
inc esi
cmp esi, eax
mov dword [esp + 0x58], esi
jb 0x54916b
lea ecx, [esp + 0xc8]
call fcn.00537f70
cmp word [esp + 0x48], bx
jne 0x549387
mov word [esp + 0x44], 0xffff
mov word [esp + 0x46], bx
mov eax, dword [esp + 0x17c]
cmp al, bl
je 0x5493a5
mov ecx, dword [0x5c6628]
push eax
call fcn.00535f90
lea eax, [esp + 0x40]
push eax
jmp 0x5493aa
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [0x5c6628]
call fcn.005361d0
movsx esi, ax
cmp esi, 0xffffffff
jne 0x549406
cmp dword [edi + 0x2c], ebx
je 0x549806
mov ecx, edi
call fcn.00549f60
push eax
lea ecx, [esp + 0x40]
call fcn.005498f0
push ecx
lea edx, [esp + 0x40]
mov ecx, esp
mov dword [esp + 0x60], esp
push edx
call fcn.00531810
lea ecx, [esp + 0x2c]
call fcn.005319b0
mov ecx, edi
call fcn.0054a2c0
mov dword [esp + 0x48], 0xfffffffe
mov byte [esp + 0x13], bl
jmp 0x549455
push ecx
lea eax, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x60], esp
push eax
call fcn.00531810
lea ecx, [esp + 0x40]
call fcn.005319b0
lea ecx, [esp + 0x3c]
push ecx
mov ecx, edi
call fcn.00549ff0
push esi
lea ecx, [esp + 0x30]
call fcn.0042ab20
push ecx
mov ecx, esp
mov dword [esp + 0x60], esp
push eax
call fcn.00531810
lea ecx, [esp + 0x2c]
call fcn.005319b0
mov dword [esp + 0x48], ebx
mov byte [esp + 0x13], 1
lea ecx, [esp + 0x4c]
mov byte [esp + 0x170], 7
call fcn.00531940
lea ecx, [esp + 0x50]
mov byte [esp + 0x170], 5
call fcn.00531940
jmp 0x548a8f
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
cmp esi, edi
mov byte [esp + 0x170], 4
je 0x5494a3
push ebx
mov ecx, esi
call fcn.00405470
add esi, 4
cmp esi, edi
jne 0x549490
mov esi, dword [esp + 0x18]
push esi
call fcn.00556360
mov edi, dword [esp + 0x38]
mov esi, dword [esp + 0x34]
add esp, 4
cmp esi, edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov byte [esp + 0x170], 3
je 0x5494df
push ebx
mov ecx, esi
call fcn.00405470
add esi, 4
cmp esi, edi
jne 0x5494cc
mov esi, dword [esp + 0x30]
push esi
jmp 0x54969d
push ecx
mov byte [esp + 0x174], 4
push eax
jmp 0x549752
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push eax
push ecx
lea ecx, [esp + 0x1c]
mov byte [esp + 0x178], 4
call fcn.00404c00
mov edx, dword [esp + 0x18]
push edx
call fcn.00556360
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
add esp, 4
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
push eax
push ecx
lea ecx, [esp + 0x34]
mov byte [esp + 0x178], 3
call fcn.00404c00
mov edx, dword [esp + 0x30]
push edx
call fcn.00556360
add esp, 4
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
jmp 0x54986d
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push eax
push ecx
lea ecx, [esp + 0x1c]
mov byte [esp + 0x178], 4
call fcn.00404c00
mov edx, dword [esp + 0x18]
push edx
call fcn.00556360
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
add esp, 4
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
push eax
push ecx
lea ecx, [esp + 0x34]
mov byte [esp + 0x178], 3
call fcn.00404c00
mov edx, dword [esp + 0x30]
push edx
call fcn.00556360
add esp, 4
lea ecx, [esp + 0x28]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov byte [esp + 0x170], 2
call fcn.00531940
lea ecx, [esp + 0xc8]
mov byte [esp + 0x170], 1
call fcn.00537a90
lea ecx, [esp + 0x3c]
mov byte [esp + 0x170], bl
mov dword [esp + 0x40], 0x572180
call fcn.00531940
lea ecx, [esp + 0x178]
mov dword [esp + 0x170], 0xffffffff
call fcn.00531940
mov eax, 0xfffffffc
jmp 0x5498c3
lea ecx, [esp + 0x4c]
mov byte [esp + 0x170], 7
call fcn.00531940
lea ecx, [esp + 0x50]
mov byte [esp + 0x170], 5
call fcn.00531940
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push eax
push ecx
lea ecx, [esp + 0x1c]
mov byte [esp + 0x178], 4
call fcn.00404c00
mov edx, dword [esp + 0x18]
push edx
call fcn.00556360
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
add esp, 4
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
push eax
push ecx
lea ecx, [esp + 0x34]
mov byte [esp + 0x178], 3
call fcn.00404c00
mov edx, dword [esp + 0x30]
push edx
call fcn.00556360
add esp, 4
lea ecx, [esp + 0x28]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov byte [esp + 0x170], 2
call fcn.00531940
lea ecx, [esp + 0xc8]
mov byte [esp + 0x170], 1
call fcn.00537a90
lea ecx, [esp + 0x3c]
mov byte [esp + 0x170], bl
mov dword [esp + 0x40], 0x572180
call fcn.00531940
lea ecx, [esp + 0x178]
mov dword [esp + 0x170], 0xffffffff
call fcn.00531940
or eax, 0xffffffff
jmp 0x5498c3
lea ecx, [esp + 0x60]
mov byte [esp + 0x170], 8
call fcn.00531940
lea ecx, [esp + 0x4c]
mov byte [esp + 0x170], 7
call fcn.00531940
lea ecx, [esp + 0x50]
mov byte [esp + 0x170], 5
call fcn.00531940
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push eax
mov byte [esp + 0x174], 4
push ecx
lea ecx, [esp + 0x1c]
call fcn.00404c00
mov edx, dword [esp + 0x18]
push edx
call fcn.00556360
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
add esp, 4
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
push eax
push ecx
lea ecx, [esp + 0x34]
mov byte [esp + 0x178], 3
call fcn.00404c00
mov edx, dword [esp + 0x30]
push edx
call fcn.00556360
add esp, 4
lea ecx, [esp + 0x28]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov byte [esp + 0x170], 2
call fcn.00531940
lea ecx, [esp + 0xc8]
mov byte [esp + 0x170], 1
call fcn.00537a90
lea ecx, [esp + 0x3c]
mov byte [esp + 0x170], bl
mov dword [esp + 0x40], 0x572180
call fcn.00531940
lea ecx, [esp + 0x178]
mov dword [esp + 0x170], 0xffffffff
call fcn.00531940
mov eax, 0xfffffffe
jmp 0x5498c3
lea ecx, [esp + 0x4c]
mov byte [esp + 0x170], 7
call fcn.00531940
lea ecx, [esp + 0x50]
mov byte [esp + 0x170], 5
call fcn.00531940
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push eax
push ecx
lea ecx, [esp + 0x1c]
mov byte [esp + 0x178], 4
call fcn.00404c00
mov edx, dword [esp + 0x18]
push edx
call fcn.00556360
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov byte [esp + 0x170], 3
call fcn.00404970
lea ecx, [esp + 0x28]
mov byte [esp + 0x170], 2
call fcn.00531940
lea ecx, [esp + 0xc8]
mov byte [esp + 0x170], 1
call fcn.00537a90
lea ecx, [esp + 0x3c]
mov byte [esp + 0x170], bl
mov dword [esp + 0x40], 0x572180
call fcn.00531940
lea ecx, [esp + 0x178]
mov dword [esp + 0x170], 0xffffffff
call fcn.00531940
xor eax, eax
mov ecx, dword [esp + 0x168]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x164
ret 8