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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x10c]
cmp eax, dword [ecx + 8]
jbe 0x5461ae
sub esp, 0x18c
mov eax, 0
lea edi, [esp + 0x158]
call fcn.0044b773
mov eax, dword [esp + 0x190]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
movzx ecx, byte [ecx + 0x4c]
test cl, cl
je 0x544eb9
mov ecx, dword [eax + 0x64]
mov ecx, dword [ecx + 0x18]
test ecx, ecx
jle 0x544eb9
mov ecx, dword [eax + 8]
mov byte [ecx + 0x38], 1
mov dword [esp + 0xe0], edx
mov ecx, dword [eax + 4]
movzx ecx, byte [ecx + 0x68]
test cl, cl
je 0x54614c
mov ecx, dword [edx + 0x24]
movzx ecx, byte [ecx + 0x5d]
xor ecx, 1
mov edx, dword [eax + 8]
mov byte [edx + 0x48], cl
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
movzx edx, word [edx]
mov word [ecx + 0x28], dx
mov ecx, dword [eax]
movzx ecx, word [ecx + 0x20]
mov edx, dword [eax + 0xc]
mov dword [esp + 4], edx
mov word [esp], cx
call fcn.0054b2b0
lea esi, [esp + 8]
lea edi, [esp + 0xf0]
call fcn.0044bc0e
mov eax, dword [0x7db370]
mov ecx, dword [esp + 0x190]
lea edi, [ecx + 0x18]
mov dword [esp + 0xec], edi
test eax, eax
jne 0x54612a
lea esi, [esp + 0xf0]
call fcn.0044bc0e
mov ecx, dword [esp + 0xe0]
mov edx, dword [ecx + 0x24]
mov edx, dword [edx + 0x44]
test edx, edx
jne 0x54611e
mov edx, dword [esp + 0xec]
test byte [edx], al
mov ebx, dword [esp + 0x190]
mov dword [ebx + 0x3c], 0
mov dword [ebx + 0x40], 0
mov ebp, dword [0x7db370]
test ebp, ebp
jne 0x54610f
mov dword [ebx + 0x38], 0
mov eax, dword [ebx + 4]
mov dword [esp], eax
call fcn.0053e3e0
mov eax, dword [esp + 0xec]
mov dword [esp], eax
call fcn.0054b5e0
mov eax, dword [esp + 0x190]
mov ecx, dword [eax + 8]
mov dword [esp], ecx
call fcn.00540150
mov eax, dword [esp + 0xec]
mov dword [esp], eax
call fcn.0054b5e0
mov eax, dword [esp + 0x190]
mov ecx, dword [eax + 8]
mov dword [esp], ecx
call fcn.00540150
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 4]
mov ebx, dword [esp + 0xe0]
mov dword [esp], ebx
mov byte [esp + 4], 0x16
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
call fcn.00537ed0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x5460fa
lea eax, [0x5ef660]
mov dword [esp], eax
call fcn.00409a30
mov eax, dword [esp + 0x190]
mov ecx, dword [eax + 0x64]
mov edx, dword [esp + 4]
mov ebx, dword [ecx + 8]
mov ebp, dword [ecx + 4]
mov ecx, dword [ecx]
mov dword [edx + 0x10], ebp
mov dword [edx + 0x14], ebx
mov ebx, dword [0x7db370]
test ebx, ebx
jne 0x5460eb
mov dword [edx + 0xc], ecx
mov dword [esp + 0xdc], edx
mov dword [esp], edx
call fcn.00541570
mov eax, dword [esp + 0xec]
mov dword [esp], eax
call fcn.0054b5e0
mov eax, dword [esp + 0xdc]
mov dword [esp], eax
call fcn.00541570
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 4]
mov ebx, dword [esp + 0xe0]
mov dword [esp], ebx
mov byte [esp + 4], 0x16
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
call fcn.00537ed0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
test eax, eax
jne 0x5460d6
mov eax, dword [esp + 0x190]
mov ecx, dword [eax + 8]
movzx ecx, byte [ecx + 0x38]
test cl, cl
jne 0x545ffd
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0x10]
mov ecx, dword [esp + 0xe0]
movzx ebx, word [ecx + 0x20]
mov word [esp], bx
mov ebx, dword [edx]
call ebx
mov eax, dword [esp + 4]
mov dword [esp + 0x88], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0xc4], ecx
mov ebx, dword [eax + 0x14]
mov ebp, dword [esp + 0xe0]
mov esi, dword [ebp + 0x24]
mov edi, dword [esp + 0x190]
mov eax, dword [edi + 0x64]
mov ebp, dword [edi + 4]
mov edi, dword [edi + 8]
mov dword [esp + 0x10], edi
mov dword [esp + 4], esi
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebp
mov dword [esp], ecx
call ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
test ecx, ecx
jne 0x545fb8
test eax, eax
je 0x5451ba
mov dword [esp + 0xbc], eax
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
mov ebx, dword [eax]
test ebx, ebx
je 0x545eba
mov eax, dword [esp + 0xec]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
call fcn.0054b5e0
mov eax, dword [esp + 0xbc]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
mov ebx, dword [eax + 8]
test edx, edx
je 0x545dc2
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov byte [esp + 4], 0x16
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.00537ed0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x545dad
mov ecx, dword [esp + 0xe0]
mov edx, dword [ecx + 0x24]
mov edx, dword [edx + 0x44]
cmp edx, 1
jge 0x545c6f
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 4
call fcn.00437b80
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test ecx, ecx
jbe 0x54616f
mov byte [edx], 0xe
mov ebx, dword [esp + 0xec]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.0054b5e0
mov dword [esp + 0xa4], 0
mov byte [esp + 0xa4], 0xe
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov byte [esp + 4], 0x16
lea ecx, [esp + 0xa4]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 4
mov dword [esp + 0x10], 4
call fcn.00537ed0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x545c5a
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
call fcn.005378c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
test ecx, ecx
jne 0x545c45
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
call fcn.00537fa0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 4]
test ecx, ecx
jne 0x545c30
mov eax, dword [esp + 0xe0]
mov ecx, dword [eax + 0x24]
mov ecx, dword [ecx + 0x44]
cmp ecx, 1
jl 0x545c27
lea ecx, [0x5f54a0]
cmp ecx, ebx
jne 0x545c1b
mov ebp, edx
mov dword [esp + 0xdc], edx
jne 0x545bb4
mov dword [esp], edx
call fcn.00541570
mov eax, dword [esp + 0xec]
mov dword [esp], eax
call fcn.0054b5e0
mov eax, dword [esp + 0xdc]
mov ecx, dword [eax + 0x10]
mov edx, dword [eax + 0xc]
mov eax, dword [eax + 0x14]
test ecx, ecx
jne 0x54538d
mov ebx, dword [esp + 0xe0]
mov ebp, dword [ebx + 0x24]
mov ebp, dword [ebp + 0x44]
cmp ebp, 2
jne 0x545388
mov dword [esp], ebx
mov byte [esp + 4], 0x2a
call fcn.00537450
lea eax, [0x5ea220]
mov dword [esp], eax
call fcn.00409a30
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x28
mov eax, dword [0x7db370]
test eax, eax
jne 0x54537b
lea eax, [0x6285d3]
mov dword [edi], eax
lea eax, [0x65f350]
mov dword [esp + 0x194], eax
mov dword [esp + 0x198], edi
add esp, 0x18c
ret
lea eax, [0x6285d3]
call fcn.0044b680
jmp 0x545360
cmp ebp, 4
je 0x545328
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x190]
mov dword [esp], eax
call fcn.00547050
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
test ecx, ecx
jne 0x545b9f
mov dword [esp + 0xb8], edx
mov dword [esp + 0x7c], ebx
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
call fcn.00537fa0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 4]
test eax, eax
jne 0x545b8a
mov eax, dword [esp + 0xb8]
mov ecx, dword [esp + 0x7c]
lea ebp, [0x5f5720]
cmp ebp, ebx
jne 0x545b7e
mov esi, edx
mov dword [esp + 0xc0], edx
jne 0x545b10
mov dword [esp + 0xb8], eax
mov dword [esp + 0x7c], ecx
mov ebx, dword [edx + 8]
mov ebp, dword [edx]
mov esi, dword [edx + 4]
test ebp, ebp
je 0x545a16
mov eax, dword [esp + 0xec]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebx
call fcn.0054b5e0
mov eax, dword [esp + 0x88]
mov eax, dword [eax + 0x18]
mov ecx, dword [esp + 0xe0]
mov edx, dword [ecx + 0x24]
mov ebx, dword [esp + 0x190]
mov ebp, dword [ebx + 0x64]
movzx esi, word [ecx + 0x20]
mov word [esp + 0x10], si
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov edx, dword [esp + 0xc0]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0xc4]
mov dword [esp], edx
call eax
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
test ecx, ecx
jne 0x5459d1
mov dword [esp + 0x80], ebx
mov eax, dword [esp + 0x190]
mov ecx, dword [eax + 4]
mov esi, dword [eax + 8]
mov edi, dword [esp + 0xe0]
movzx edi, word [edi + 0x20]
mov eax, dword [eax + 0xc]
mov ebx, dword [ecx + 0x18]
mov dword [esp + 0xa0], ebx
mov ebx, dword [ecx + 0x14]
mov dword [esp + 0x9c], ebx
mov ecx, dword [ecx + 0x10]
mov dword [esp + 0xe8], ecx
mov ebx, dword [esi + 0x18]
mov ecx, dword [esi + 0x14]
mov esi, dword [esi + 0x10]
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], ebx
mov word [esp], di
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov eax, dword [esp + 0x80]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xe8]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x1c], eax
call fcn.0054aac0
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x190]
mov dword [ebx + 0x50], edx
mov dword [ebx + 0x54], ecx
mov ebp, dword [0x7db370]
test ebp, ebp
jne 0x5459c4
mov dword [ebx + 0x4c], eax
mov ebp, dword [ebx + 4]
mov esi, dword [esp + 0xe0]
mov edi, dword [esi + 0x24]
mov ebx, dword [ebp + 0x18]
mov esi, dword [ebp + 0x14]
mov ebp, dword [ebp + 0x10]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], ecx
mov dword [esp], edi
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebx
call fcn.00533d70
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
test ecx, ecx
jne 0x54597f
mov ecx, dword [esp + 0xe0]
mov edx, dword [ecx + 0x4c]
test edx, edx
jg 0x54561e
mov ecx, dword [esp + 0xec]
test byte [ecx], al
mov ecx, dword [esp + 0x190]
mov dword [ecx + 0x3c], 0
mov dword [ecx + 0x40], 0
mov edx, dword [0x7db370]
test edx, edx
jne 0x545612
mov dword [ecx + 0x38], 0
mov dword [esp + 0x194], 0
mov dword [esp + 0x198], 0
add esp, 0x18c
ret
lea edi, [ecx + 0x38]
xor eax, eax
call fcn.0044b680
jmp 0x5455f5
mov dword [esp], ecx
call fcn.00537fa0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 4]
mov ebx, dword [esp + 8]
test eax, eax
jne 0x54596a
lea eax, [0x5f5620]
cmp eax, edx
jne 0x54595e
mov ecx, ebx
mov dword [esp + 0xd4], ebx
jne 0x5458f0
mov word [esp + 0x5e], 0
movzx eax, word [ebx + 0xe]
mov word [esp + 0x5e], ax
mov eax, dword [esp + 0xe0]
movzx ecx, word [eax + 0x20]
mov word [esp + 0x20], cx
mov ecx, dword [esp + 0x7c]
mov dword [esp], ecx
mov edx, dword [esp + 0xb8]
mov dword [esp + 4], edx
lea ebp, [esp + 0x5e]
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
mov ebp, dword [0x7c4958]
mov esi, dword [0x7c4960]
mov edi, dword [0x7c495c]
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], esi
call fcn.00531560
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
movzx edx, byte [esp + 0x26]
mov ebx, dword [esp + 0x28]
test ecx, ecx
jne 0x5458ab
mov byte [esp + 0x5d], dl
mov dword [esp + 0x8c], ebx
lea edi, [esp + 0x124]
mov esi, dword [esp + 0xec]
call fcn.0044bc0e
mov eax, dword [esp + 0x190]
mov ecx, dword [eax + 0x54]
mov ebp, dword [eax + 0x50]
mov eax, dword [eax + 0x4c]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], ebp
mov dword [esp + 0x44], ecx
mov edi, esp
lea esi, [esp + 0x124]
call fcn.0044bc0e
mov byte [esp + 0x34], dl
mov dword [esp + 0x38], ebx
call fcn.0054bfd0
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x48]
test ecx, ecx
je 0x54584b
test ecx, ecx
je 0x545828
mov dword [esp + 0xcc], eax
mov dword [esp + 0x90], ecx
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov byte [esp + 4], 0x2a
call fcn.00537450
mov eax, dword [esp + 0x90]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0xcc]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], 0
lea edx, [0x62bb65]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x38
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call fcn.0043ade0
mov eax, dword [esp + 0x14]
mov dword [esp + 0xb4], eax
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x78], ecx
lea edx, [0x5ea220]
mov dword [esp], edx
call fcn.00409a30
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x78]
mov dword [edi + 4], eax
mov eax, dword [0x7db370]
test eax, eax
jne 0x54581a
mov eax, dword [esp + 0xb4]
mov dword [edi], eax
lea eax, [0x65f350]
mov dword [esp + 0x194], eax
mov dword [esp + 0x198], edi
add esp, 0x18c
ret
mov eax, dword [esp + 0xb4]
call fcn.0044b680
jmp 0x5457ff
mov eax, dword [esp + 0xd4]
mov dword [esp], eax
call fcn.00543150
mov eax, dword [esp + 0xec]
mov dword [esp], eax
call fcn.0054b5e0
jmp 0x5455c6
mov eax, dword [esp + 0xd4]
mov ecx, dword [eax + 0x18]
mov esi, dword [eax + 0x14]
mov edi, dword [eax + 0x10]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], ecx
movzx ecx, byte [esp + 0x5d]
mov byte [esp], cl
mov ecx, dword [esp + 0x7c]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xb8]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], edx
call fcn.00531950
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
jmp 0x545752
mov dword [esp + 0xcc], eax
mov dword [esp + 0x90], ecx
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov byte [esp + 4], 0x2f
call fcn.00537450
mov eax, dword [esp + 0x90]
mov dword [esp + 0x194], eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x198], eax
add esp, 0x18c
ret
mov dword [esp + 0x84], edx
mov dword [esp + 0xe4], ecx
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov byte [esp + 4], 0xa
call fcn.00537450
lea eax, [0x5f5620]
mov dword [esp], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0xc], eax
call fcn.005342d0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x194], ecx
mov dword [esp + 0x198], eax
add esp, 0x18c
ret
mov ecx, ebx
mov ebx, 0
jmp 0x54564e
mov dword [esp + 0x194], eax
mov dword [esp + 0x198], ecx
add esp, 0x18c
ret
mov dword [esp + 0xc8], eax
mov dword [esp + 0x94], ecx
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov byte [esp + 4], 0x50
call fcn.00537450
mov eax, dword [esp + 0x94]
mov dword [esp + 0x194], eax
mov eax, dword [esp + 0xc8]
mov dword [esp + 0x198], eax
add esp, 0x18c
ret
lea edi, [ebx + 0x4c]
call fcn.0044b680
jmp 0x545572
mov dword [esp + 0xd0], eax
mov dword [esp + 0x98], ecx
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov byte [esp + 4], 0x28
call fcn.00537450
mov eax, dword [esp + 0x98]
mov dword [esp + 0x194], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x198], eax
add esp, 0x18c
ret
mov eax, dword [edx + 0x10]
mov dword [esp + 0xa0], eax
lea ecx, [0x5dfee0]
mov dword [esp], ecx
lea ecx, [eax + 4]
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00437b80
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x14]
test eax, eax
jbe 0x546168
mov byte [ecx], 0x10
cmp eax, 1
jbe 0x546161
mov ebx, dword [esp + 0xa0]
mov ebp, ebx
sar ebx, 0x10
mov byte [ecx + 1], bl
cmp eax, 2
jbe 0x54615a
mov ebx, ebp
sar ebp, 8
xchg ebp, eax
mov byte [ecx + 2], al
xchg ebp, eax
cmp eax, 3
jbe 0x546153
mov dword [esp + 0xb0], ecx
mov byte [ecx + 3], bl
lea ebx, [edx - 4]
neg ebx
sar ebx, 0x1f
and ebx, 4
add ebx, ecx
lea ebp, [eax - 4]
mov edi, dword [esp + 0xc0]
mov esi, dword [edi + 0x10]
mov ecx, dword [edi + 0xc]
cmp ebp, esi
jle 0x545b0c
mov dword [esp + 0x64], eax
mov dword [esp + 0x74], edx
cmp ecx, ebx
je 0x545acb
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
call fcn.0044be80
mov ecx, dword [esp + 0x64]
mov edi, dword [esp + 0xc0]
mov dword [edi + 4], ecx
mov edx, dword [esp + 0x74]
mov dword [edi + 8], edx
mov ebx, dword [0x7db370]
test ebx, ebx
jne 0x545afe
mov eax, dword [esp + 0xb0]
mov dword [edi], eax
mov ebx, edx
mov esi, ecx
mov ebp, eax
jmp 0x545435
mov eax, dword [esp + 0xb0]
call fcn.0044b680
jmp 0x545af3
mov esi, ebp
jmp 0x545aaf
mov dword [esp + 0xe4], esi
mov dword [esp + 0x84], ebx
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov byte [esp + 4], 0xa
call fcn.00537450
lea eax, [0x5f5720]
mov dword [esp], eax
mov eax, dword [esp + 0xc0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0xc], eax
call fcn.005342d0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x194], ecx
mov dword [esp + 0x198], eax
add esp, 0x18c
ret
mov esi, edx
mov edx, 0
jmp 0x54540d
mov dword [esp + 0x194], eax
mov dword [esp + 0x198], ecx
add esp, 0x18c
ret
mov dword [esp + 0x194], ecx
mov dword [esp + 0x198], eax
add esp, 0x18c
ret
mov dword [esp + 0xe4], ebp
mov dword [esp + 0x84], ebx
mov dword [esp], eax
mov byte [esp + 4], 0xa
call fcn.00537450
lea eax, [0x5f54a0]
mov dword [esp], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0xc], eax
call fcn.005342d0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x194], ecx
mov dword [esp + 0x198], eax
add esp, 0x18c
ret
mov ebp, edx
mov edx, 0
jmp 0x5452de
xor eax, eax
xor ecx, ecx
jmp 0x5453fd
mov dword [esp + 0x194], ecx
mov dword [esp + 0x198], eax
add esp, 0x18c
ret
mov dword [esp + 0x194], ecx
mov dword [esp + 0x198], eax
add esp, 0x18c
ret
mov dword [esp + 0x194], ecx
mov dword [esp + 0x198], eax
add esp, 0x18c
ret
lea edi, [esp + 0x158]
xor eax, eax
call fcn.0044b773
lea ecx, [0x5d8a80]
mov dword [esp], ecx
call fcn.00409a30
mov ecx, dword [esp + 4]
movzx edx, word [0x65de78]
mov word [ecx], dx
mov dword [esp + 0x16c], 2
mov dword [esp + 0x170], 2
mov dword [esp + 0x168], ecx
mov ecx, dword [esp + 0xe0]
movzx edx, word [ecx + 0x20]
cmp dx, 0x303
jb 0x545cf7
mov byte [esp + 0x164], 1
mov eax, dword [0x7c4960]
mov edx, dword [0x7c495c]
mov ebx, dword [0x7c4958]
mov dword [esp + 0x178], edx
mov dword [esp + 0x17c], eax
mov dword [esp + 0x174], ebx
mov eax, dword [ecx + 0x24]
mov eax, dword [eax + 0x48]
test eax, eax
jne 0x545d7f
lea eax, [esp + 0x158]
mov dword [esp], eax
call fcn.005427b0
mov eax, dword [esp + 0xec]
mov dword [esp], eax
call fcn.0054b5e0
lea eax, [esp + 0x158]
mov dword [esp], eax
call fcn.005427b0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0xe0]
mov dword [esp], ebx
mov byte [esp + 4], 0x16
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
call fcn.00537ed0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x5451d0
mov dword [esp + 0x194], ecx
mov dword [esp + 0x198], eax
add esp, 0x18c
ret
mov dword [esp], eax
call fcn.00519bd0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xc]
mov dword [esp + 0x184], eax
mov dword [esp + 0x188], edx
mov dword [esp + 0x180], ecx
jmp 0x545d01
mov dword [esp + 0x194], ecx
mov dword [esp + 0x198], eax
add esp, 0x18c
ret
mov ecx, dword [eax + 0x10]
mov dword [esp + 0xa0], ecx
lea edx, [0x5dfee0]
mov dword [esp], edx
lea ebx, [ecx + 4]
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.00437b80
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test ecx, ecx
jbe 0x54618b
mov byte [edx], 0xc
cmp ecx, 1
jbe 0x546184
mov ebx, dword [esp + 0xa0]
mov ebp, ebx
sar ebx, 0x10
mov byte [edx + 1], bl
cmp ecx, 2
jbe 0x54617d
mov ebx, ebp
sar ebp, 8
xchg ebp, eax
mov byte [edx + 2], al
xchg ebp, eax
cmp ecx, 3
jbe 0x546176
mov dword [esp + 0xa8], edx
mov byte [edx + 3], bl
lea ebx, [eax - 4]
neg ebx
sar ebx, 0x1f
and ebx, 4
add ebx, edx
lea ebp, [ecx - 4]
mov edi, dword [esp + 0xbc]
mov esi, dword [edi + 0x10]
mov edx, dword [edi + 0xc]
cmp ebp, esi
jle 0x545eb6
mov dword [esp + 0x6c], eax
mov dword [esp + 0x68], ecx
cmp edx, ebx
je 0x545e77
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], esi
call fcn.0044be80
mov ecx, dword [esp + 0x68]
mov edi, dword [esp + 0xbc]
mov dword [edi + 4], ecx
mov edx, dword [esp + 0x6c]
mov dword [edi + 8], edx
mov ebx, dword [0x7db370]
test ebx, ebx
jne 0x545ea8
mov eax, dword [esp + 0xa8]
mov dword [edi], eax
mov ebx, edx
mov edx, eax
jmp 0x54518a
mov eax, dword [esp + 0xa8]
call fcn.0044b680
jmp 0x545e9f
mov esi, ebp
jmp 0x545e5b
mov ecx, dword [eax + 0x10]
mov dword [esp + 0xa0], ecx
lea edx, [0x5dfee0]
mov dword [esp], edx
lea ebx, [ecx + 4]
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.00437b80
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
test ecx, ecx
jbe 0x5461a7
mov byte [eax], 0xc
cmp ecx, 1
jbe 0x5461a0
mov ebx, dword [esp + 0xa0]
mov ebp, ebx
sar ebx, 0x10
mov byte [eax + 1], bl
cmp ecx, 2
jbe 0x546199
mov ebx, ebp
sar ebp, 8
xchg ebp, ebx
mov byte [eax + 2], bl
xchg ebp, ebx
cmp ecx, 3
jbe 0x546192
mov dword [esp + 0x70], edx
mov byte [eax + 3], bl
lea ebx, [edx - 4]
neg ebx
sar ebx, 0x1f
and ebx, 4
add ebx, eax
lea ebp, [ecx - 4]
mov edi, dword [esp + 0xbc]
mov esi, dword [edi + 0xc]
mov edx, dword [edi + 0x10]
cmp ebp, edx
jle 0x545fb4
mov dword [esp + 0xac], eax
mov dword [esp + 0x60], ecx
cmp esi, ebx
je 0x545f71
mov dword [esp], ebx
mov dword [esp + 4], esi
mov dword [esp + 8], edx
call fcn.0044be80
mov ecx, dword [esp + 0x60]
mov edi, dword [esp + 0xbc]
mov dword [edi + 4], ecx
mov edx, dword [esp + 0x70]
mov dword [edi + 8], edx
mov ebx, dword [0x7db370]
test ebx, ebx
jne 0x545fa6
mov eax, dword [esp + 0xac]
mov dword [edi], eax
mov ebx, eax
mov ecx, edx
mov edx, dword [esp + 0x60]
jmp 0x545158
mov eax, dword [esp + 0xac]
call fcn.0044b680
jmp 0x545f99
mov edx, ebp
jmp 0x545f52
mov dword [esp + 0x98], ecx
mov dword [esp + 0xd0], ebx
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov byte [esp + 4], 0x28
call fcn.00537450
mov eax, dword [esp + 0x98]
mov dword [esp + 0x194], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x198], eax
add esp, 0x18c
ret
lea eax, [0x5f7960]
mov dword [esp], eax
call fcn.00409a30
mov eax, dword [esp + 4]
mov byte [eax + 0xc], 1
mov ecx, dword [esp + 0x190]
mov edx, dword [ecx + 0x64]
mov ebx, dword [edx + 0x14]
mov ebp, dword [edx + 0x18]
mov edx, dword [edx + 0x1c]
mov dword [eax + 0x14], ebp
mov dword [eax + 0x18], edx
mov edx, dword [0x7db370]
test edx, edx
jne 0x5460c3
mov dword [eax + 0x10], ebx
mov dword [esp + 0xd8], eax
mov dword [esp], eax
call fcn.00541cc0
mov eax, dword [esp + 0xec]
mov dword [esp], eax
call fcn.0054b5e0
mov eax, dword [esp + 0xd8]
mov dword [esp], eax
call fcn.00541cc0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0xe0]
mov dword [esp], ebx
mov byte [esp + 4], 0x16
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
call fcn.00537ed0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
test eax, eax
jne 0x5460ae
mov eax, dword [esp + 0x190]
jmp 0x5450c8
mov dword [esp + 0x194], eax
mov dword [esp + 0x198], ecx
add esp, 0x18c
ret
lea edi, [eax + 0x10]
mov edx, eax
mov eax, ebx
call fcn.0044b680
mov eax, edx
jmp 0x54603d
mov dword [esp + 0x194], eax
mov dword [esp + 0x198], ecx
add esp, 0x18c
ret
lea edi, [edx + 0xc]
mov eax, ecx
call fcn.0044b680
jmp 0x545049
mov dword [esp + 0x194], ecx
mov dword [esp + 0x198], eax
add esp, 0x18c
ret
lea edi, [ebx + 0x38]
xor eax, eax
call fcn.0044b680
jmp 0x544f85
mov ebx, dword [esp + 0x190]
jmp 0x544f85
lea eax, [0x60c0a0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0xf0]
mov dword [esp + 8], eax
call fcn.0040ecd0
jmp 0x544f3d
xor ecx, ecx
jmp 0x544ed9
call fcn.004258a0
ud2
call fcn.004258a0
ud2
call fcn.004258a0
ud2
call fcn.004258a0
ud2
call fcn.004258a0
ud2
call fcn.004258a0
ud2
call fcn.004258a0
ud2
call fcn.004258a0
ud2
call fcn.004258a0
ud2
call fcn.004258a0
ud2
call fcn.004258a0
ud2
call fcn.004258a0
ud2
call fcn.004258a0
ud2
call fcn.00449f20
jmp fcn.00544e60