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

Disassembly:
push 0xffffffffffffffff
push 0x4b13c0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1b0
push ebx
push ebp
push esi
push edi
xor edi, edi
mov ebp, ecx
mov dword [esp + 0x20], edi
mov eax, 7
xor ecx, ecx
mov byte [esp + 0x1f], 0
mov dword [esp + 0x18], edi
mov dword [esp + 0x15c], eax
mov dword [esp + 0x158], edi
mov word [esp + 0x148], cx
xor edx, edx
mov dword [esp + 0x1c8], edi
mov dword [esp + 0x124], eax
mov dword [esp + 0x120], edi
mov word [esp + 0x110], dx
mov dword [esp + 0x100], eax
mov dword [esp + 0xfc], edi
mov word [esp + 0xec], cx
mov dword [esp + 0x178], eax
mov dword [esp + 0x174], edi
mov word [esp + 0x164], dx
mov dword [esp + 0x194], eax
xor eax, eax
mov dword [esp + 0x190], edi
mov word [esp + 0x180], ax
lea ecx, [esp + 0x88]
push ecx
mov ecx, dword [0x590c70]
mov byte [esp + 0x1cc], 4
call fcn.00431a80
cmp dword [eax + 0x14], 8
mov bl, 5
mov byte [esp + 0x1c8], bl
jb 0x44662e
mov esi, dword [eax]
jmp 0x446630
mov esi, eax
cmp dword [ebp + 0x10], edi
jne 0x446671
push 0x50
call fcn.004a935a
add esp, 4
mov dword [esp + 0x20], eax
mov byte [esp + 0x1c8], 6
cmp eax, edi
je 0x446659
push edi
mov ecx, eax
call fcn.00430c30
jmp 0x44665b
xor eax, eax
mov byte [esp + 0x1c8], bl
mov dword [ebp + 0x10], eax
cmp eax, edi
jne 0x446671
push 0xffffffffffffffff
call dword [0x4b62c0]
mov ecx, dword [ebp + 0x10]
push edi
push esi
push 0x551a60
call fcn.004311d0
mov ebx, 8
cmp dword [esp + 0x9c], ebx
jb 0x44669e
mov edx, dword [esp + 0x88]
push edx
call fcn.004a930e
add esp, 4
xor eax, eax
mov dword [esp + 0x5c], 7
mov dword [esp + 0x58], edi
mov word [esp + 0x48], ax
mov edx, dword [0x58dd9c]
mov eax, dword [0x58dd7c]
lea ecx, [esp + 0x48]
push ecx
mov ecx, dword [0x590c4c]
push edx
push eax
mov byte [esp + 0x1d4], 7
call fcn.0042cc00
mov esi, dword [esp + 0x48]
cmp dword [esp + 0x5c], ebx
jae 0x4466e4
lea esi, [esp + 0x48]
cmp dword [ebp + 0x10], edi
jne 0x446726
push 0x50
call fcn.004a935a
add esp, 4
mov dword [esp + 0x20], eax
mov byte [esp + 0x1c8], 8
cmp eax, edi
je 0x44670d
push edi
mov ecx, eax
call fcn.00430c30
jmp 0x44670f
xor eax, eax
mov byte [esp + 0x1c8], 7
mov dword [ebp + 0x10], eax
cmp eax, edi
jne 0x446726
push 0xffffffffffffffff
call dword [0x4b62c0]
mov edx, dword [0x58dd9c]
mov ecx, dword [ebp + 0x10]
push edi
push esi
push edx
call fcn.004311d0
mov byte [esp + 0x1c8], 4
cmp dword [esp + 0x5c], ebx
jb 0x446752
mov eax, dword [esp + 0x48]
push eax
call fcn.004a930e
add esp, 4
lea ecx, [esp + 0x88]
push ecx
call fcn.0042d800
lea edx, [esp + 0x8c]
push edx
lea eax, [esp + 0x134]
push eax
mov byte [esp + 0x1d4], 9
call fcn.00428410
add esp, 0xc
push 0x12
push edi
mov ebx, 1
push 0x559024
mov ecx, eax
mov byte [esp + 0x1d4], 0xa
mov dword [esp + 0x2c], ebx
call fcn.00403840
cmp eax, 0xffffffff
jne 0x4467d7
lea ecx, [esp + 0x88]
push ecx
lea edx, [esp + 0x4c]
push edx
call fcn.00428410
add esp, 8
push 0x12
push edi
push 0x558ffc
mov ecx, eax
mov ebx, 3
call fcn.00403840
mov byte [esp + 0x11], 0
cmp eax, 0xffffffff
je 0x4467dc
mov byte [esp + 0x11], 1
mov esi, 8
test bl, 2
je 0x44680f
and ebx, 0xfffffffd
cmp dword [esp + 0x5c], esi
jb 0x4467fc
mov eax, dword [esp + 0x48]
push eax
call fcn.004a930e
add esp, 4
xor ecx, ecx
mov dword [esp + 0x5c], 7
mov dword [esp + 0x58], edi
mov word [esp + 0x48], cx
mov dword [esp + 0x1c8], 9
test bl, 1
je 0x446838
cmp dword [esp + 0x140], esi
jb 0x446838
mov edx, dword [esp + 0x12c]
push edx
call fcn.004a930e
add esp, 4
cmp byte [esp + 0x11], 0
je 0x446843
mov byte [ebp + 1], 1
cmp dword [esp + 0x9c], esi
jb 0x44685c
mov eax, dword [esp + 0x88]
push eax
call fcn.004a930e
add esp, 4
xor ecx, ecx
mov dword [esp + 0x1b8], 7
mov dword [esp + 0x1b4], edi
mov word [esp + 0x1a4], cx
mov eax, dword [0x58e09c]
lea edx, [esp + 0x1a4]
push edx
push eax
mov byte [esp + 0x1d0], 0xb
call fcn.00434e90
add esp, 8
test al, al
je 0x4468b3
push 0xffffffffffffffff
push edi
lea ecx, [esp + 0x1ac]
push ecx
lea ecx, [esp + 0xf8]
call fcn.00404ac0
jmp 0x4468d6
mov eax, dword [esp + 0xec]
mov dword [esp + 0xfc], edi
cmp dword [esp + 0x100], esi
jae 0x4468d1
lea eax, [esp + 0xec]
xor edx, edx
mov word [eax], dx
cmp byte [ebp + 1], 0
mov ecx, dword [0x59122c]
mov byte [esp + 0x13], 0
je 0x4469bf
mov dword [esp + 0xa8], edi
mov dword [esp + 0x20], edi
mov eax, dword [ecx]
mov edx, dword [eax + 0xc]
call edx
test al, al
je 0x448152
cmp dword [esp + 0xfc], 0
je 0x448152
mov dword [esp + 0x5c], 0xf
mov dword [esp + 0x58], 0
mov byte [esp + 0x48], 0
or eax, 0xffffffff
cmp dword [esp + 0x100], 8
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0xec]
mov byte [esp + 0x1c8], 0xc
jae 0x446959
lea eax, [esp + 0xec]
push 0
push 0
push 0
push 0
push 0x54e75c
push 0x54e75c
push eax
push 1
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0xcc]
push ecx
lea edx, [esp + 0x3b]
push edx
push 1
lea eax, [esp + 0xdc]
push eax
lea ecx, [esp + 0x7c]
push ecx
mov ecx, dword [0x59122c]
call fcn.00409ef0
cmp dword [esp + 0x5c], 0x10
mov byte [esp + 0x1c8], 0xb
jb 0x448152
mov edx, dword [esp + 0x48]
push edx
call fcn.004a930e
add esp, 4
jmp 0x448152
mov eax, dword [ecx]
mov edx, dword [eax + 0xc]
call edx
test al, al
je 0x4469d4
mov dword [esp + 0x14], 4
jmp 0x4469f0
mov ecx, dword [0x591228]
mov eax, dword [ecx]
mov edx, dword [eax + 4]
call edx
movzx eax, al
neg eax
sbb eax, eax
and eax, 7
inc eax
mov dword [esp + 0x14], eax
mov ecx, dword [0x590c70]
lea eax, [esp + 0x88]
push eax
call fcn.004318e0
push 4
push edi
push 0x558ff0
mov ecx, eax
call fcn.00403840
cmp eax, 0xffffffff
setne byte [esp + 0x67]
cmp dword [esp + 0x9c], esi
jb 0x446a33
mov ecx, dword [esp + 0x88]
push ecx
call fcn.004a930e
add esp, 4
mov ecx, dword [0x590c70]
lea edx, [esp + 0x88]
push edx
call fcn.00431970
push 4
push edi
push 0x558ff0
mov ecx, eax
call fcn.00403840
cmp eax, 0xffffffff
setne bl
mov byte [esp + 0x66], bl
cmp dword [esp + 0x9c], esi
jb 0x446a78
mov eax, dword [esp + 0x88]
push eax
call fcn.004a930e
add esp, 4
mov byte [esp + 0x11], 0
mov byte [esp + 0x12], 0
test bl, bl
je 0x446b43
or dword [esp + 0x14], 2
xor ecx, ecx
mov dword [esp + 0x5c], 7
mov dword [esp + 0x58], 0
mov word [esp + 0x48], cx
lea edx, [esp + 0x88]
push edx
mov ecx, ebp
mov byte [esp + 0x1cc], 0xd
call fcn.00446280
mov esi, 8
mov byte [esp + 0x1c8], 0xe
cmp dword [eax + 0x14], esi
jb 0x446ad1
mov eax, dword [eax]
lea ecx, [esp + 0x48]
push ecx
mov ecx, dword [0x590c4c]
push eax
push 0x5522c8
call fcn.0042cc00
cmp dword [esp + 0x9c], esi
jb 0x446b00
mov edx, dword [esp + 0x88]
push edx
call fcn.004a930e
add esp, 4
mov esi, dword [esp + 0x5c]
mov edi, dword [esp + 0x48]
mov eax, edi
cmp esi, 8
jae 0x446b13
lea eax, [esp + 0x48]
push 0x54e48c
push eax
call fcn.00402f70
add esp, 8
test eax, eax
sete byte [esp + 0x12]
mov byte [esp + 0x11], 1
mov byte [esp + 0x1c8], 0xb
cmp esi, 8
jb 0x446b43
push edi
call fcn.004a930e
add esp, 4
mov byte [esp + 0xa4], 0
xor ebx, ebx
lea ecx, [ecx]
test byte [esp + 0x14], 1
jne 0x448108
mov dword [esp + 0xe4], 0xf
mov dword [esp + 0xe0], ebx
mov byte [esp + 0xd0], 0
or eax, 0xffffffff
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], eax
xor eax, eax
mov dword [esp + 0x28], ebx
mov dword [esp + 0x84], ebx
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], ebx
mov word [esp + 0x2c], ax
mov ecx, dword [0x591230]
push 1
mov byte [esp + 0x1cc], 0x10
call fcn.00435f40
test al, al
je 0x446bc9
mov ecx, dword [0x591228]
mov dword [0x591238], ecx
mov ecx, dword [esp + 0x14]
cmp ecx, 8
je 0x446cf8
cmp dword [esp + 0xfc], ebx
jne 0x446bf5
cmp dword [esp + 0x158], ebx
je 0x446bf1
cmp dword [esp + 0x120], ebx
jne 0x446bf5
xor al, al
jmp 0x446bf7
mov al, 1
mov byte [esp + 0x27], al
cmp ecx, 4
je 0x446c07
cmp byte [esp + 0x67], 0
jne 0x446c0f
test al, al
je 0x446c0f
mov bl, 1
jmp 0x446c11
xor bl, bl
mov byte [esp + 0xa8], bl
call fcn.004450d0
mov ecx, dword [0x59122c]
mov edx, dword [ecx]
or byte [esp + 0xa4], al
mov eax, dword [edx + 0xc]
call eax
test al, al
je 0x446e09
test byte [esp + 0x14], 4
je 0x446e09
mov edx, dword [esp + 0xec]
mov esi, 8
cmp dword [esp + 0x100], esi
jae 0x446c60
lea edx, [esp + 0xec]
mov ecx, dword [esp + 0x110]
cmp dword [esp + 0x124], esi
jae 0x446c77
lea ecx, [esp + 0x110]
mov eax, dword [esp + 0x148]
cmp dword [esp + 0x15c], esi
jae 0x446c8e
lea eax, [esp + 0x148]
mov edi, dword [esp + 0xa4]
push 0
push edi
lea edi, [esp + 0x188]
push edi
lea edi, [esp + 0x170]
push edi
push edx
push ecx
mov ecx, dword [esp + 0xc0]
push eax
push ecx
lea edx, [esp + 0xa4]
push edx
lea eax, [esp + 0x4c]
push eax
lea ecx, [esp + 0x3b]
push ecx
mov ecx, dword [0x59122c]
push 0
lea edx, [esp + 0xdc]
push edx
lea eax, [esp + 0x104]
push eax
call fcn.00409ef0
test al, al
je 0x446e0e
mov ecx, dword [0x59122c]
mov dword [0x591238], ecx
xor ebx, ebx
cmp dword [0x591238], ebx
je 0x4470de
cmp dword [esp + 0x28], ebx
jne 0x4470de
cmp byte [esp + 0x13], 0
je 0x446d29
mov ecx, dword [esp + 0x1d0]
push ebx
push 2
push 0x552b30
call fcn.004315a0
mov edi, dword [esp + 0xb0]
mov esi, dword [esp + 0xac]
push ebx
push 0x3e8
push edi
push esi
call fcn.004a93f0
mov dword [esp + 0x10c], edx
cmp edi, ebx
jg 0x446d6d
jl 0x446d55
cmp esi, ebx
jae 0x446d5f
or eax, 0xffffffff
mov dword [esp + 0x10c], eax
cmp edi, ebx
jl 0x446d79
jg 0x446d6d
cmp esi, 0x7fffffff
jbe 0x446d79
mov eax, 0x7fffffff
mov dword [esp + 0x10c], ebx
mov esi, dword [esp + 0x1d0]
push ebx
push eax
push 0x556220
mov ecx, esi
call fcn.004315a0
cmp dword [esp + 0xe0], ebx
jne 0x446eef
push ebx
push 1
push 0x558fd4
mov ecx, esi
call fcn.004315a0
cmp dword [esp + 0x40], 8
mov byte [esp + 0x1f], 1
mov dword [esp + 0x14], 1
jb 0x446dcb
mov ecx, dword [esp + 0x2c]
push ecx
call fcn.004a930e
add esp, 4
xor edx, edx
cmp dword [esp + 0xe4], 0x10
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], ebx
mov word [esp + 0x2c], dx
mov byte [esp + 0x1c8], 0xb
jb 0x446b50
mov eax, dword [esp + 0xd0]
push eax
call fcn.004a930e
add esp, 4
jmp 0x446b50
mov esi, 8
mov eax, dword [esp + 0x28]
test eax, eax
je 0x446e23
cmp eax, 7
je 0x446e23
cmp eax, esi
jne 0x446cf6
mov ecx, dword [0x59122c]
mov edx, dword [ecx]
mov eax, dword [edx + 0xc]
call eax
test al, al
je 0x446cf6
test bl, bl
jne 0x446cf6
cmp byte [esp + 0x27], bl
je 0x446cf6
test byte [esp + 0x14], 4
je 0x446cf6
mov edx, dword [esp + 0xec]
cmp dword [esp + 0x100], esi
jae 0x446e6c
lea edx, [esp + 0xec]
mov ecx, dword [esp + 0x110]
cmp dword [esp + 0x124], esi
jae 0x446e83
lea ecx, [esp + 0x110]
mov eax, dword [esp + 0x148]
cmp dword [esp + 0x15c], esi
jae 0x446e9a
lea eax, [esp + 0x148]
push 0
push 0
push 0
push 0
push edx
push ecx
push eax
push 0
lea ecx, [esp + 0xa4]
push ecx
lea edx, [esp + 0x4c]
push edx
lea eax, [esp + 0x3b]
push eax
push 0
lea ecx, [esp + 0xdc]
push ecx
mov ecx, dword [0x59122c]
lea edx, [esp + 0x104]
push edx
call fcn.00409ef0
xor ebx, ebx
test al, al
je 0x446cf8
mov eax, dword [0x59122c]
mov dword [0x591238], eax
jmp 0x446cf8
lea ecx, [esp + 0xd0]
push ecx
lea edx, [esp + 0x8c]
push edx
call fcn.00427080
add esp, 8
mov edi, 8
mov byte [esp + 0x1c8], 0x11
cmp dword [eax + 0x14], edi
jb 0x446f1b
mov eax, dword [eax]
push ebx
push eax
push 0x558fcc
mov ecx, esi
call fcn.004311d0
mov byte [esp + 0x1c8], 0x10
cmp dword [esp + 0x9c], edi
jb 0x446f4a
mov eax, dword [esp + 0x88]
push eax
call fcn.004a930e
add esp, 4
mov esi, dword [esp + 0x1d0]
push ebx
push 2
push 0x558fd4
mov ecx, esi
call fcn.004315a0
xor ecx, ecx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x5c], 7
mov dword [esp + 0x58], ebx
mov word [esp + 0x48], cx
lea edx, [esp + 0x48]
push edx
lea eax, [esp + 0x10c]
push eax
lea edi, [esp + 0x28]
mov byte [esp + 0x1d0], 0x12
call fcn.00444b70
mov eax, dword [esp + 0x28]
add esp, 8
cmp eax, ebx
jne 0x44702a
mov esi, 8
mov byte [esp + 0x1f], 1
mov dword [esp + 0x14], 1
cmp dword [esp + 0x5c], esi
jb 0x446fc9
mov ecx, dword [esp + 0x48]
push ecx
call fcn.004a930e
add esp, 4
xor edx, edx
mov edi, 7
mov dword [esp + 0x5c], edi
mov dword [esp + 0x58], ebx
mov word [esp + 0x48], dx
cmp dword [esp + 0x40], esi
jb 0x446ff0
mov eax, dword [esp + 0x2c]
push eax
call fcn.004a930e
add esp, 4
xor ecx, ecx
cmp dword [esp + 0xe4], 0x10
mov dword [esp + 0x40], edi
mov dword [esp + 0x3c], ebx
mov word [esp + 0x2c], cx
mov byte [esp + 0x1c8], 0xb
jb 0x446b50
mov edx, dword [esp + 0xd0]
push edx
call fcn.004a930e
add esp, 4
jmp 0x446b50
mov esi, 7
cmp eax, esi
jne 0x4470a1
mov eax, dword [0x591238]
cmp eax, dword [0x59122c]
jne 0x447083
cmp byte [esp + 0xa4], 0
jne 0x447083
lea ecx, [esp + 0x48]
mov dword [0x591238], ebx
mov byte [esp + 0xa4], 1
call fcn.00402930
lea ecx, [esp + 0x2c]
call fcn.00402930
lea ecx, [esp + 0xd0]
mov byte [esp + 0x1c8], 0xb
call fcn.00404150
jmp 0x446b50
push ebx
push 0x5521bc
mov ecx, ebp
call fcn.00445860
mov dword [esp + 0x28], esi
mov dword [esp + 0x84], 6
jmp 0x4470c2
cmp eax, 3
jne 0x4470c2
push 0xffffffffffffffff
push ebx
lea ecx, [esp + 0x50]
push ecx
lea ecx, [esp + 0x38]
mov dword [esp + 0x34], eax
mov dword [esp + 0x90], ebx
call fcn.00404ac0
cmp dword [esp + 0x5c], 8
mov byte [esp + 0x1c8], 0x10
jb 0x4470de
mov edx, dword [esp + 0x48]
push edx
call fcn.004a930e
add esp, 4
push ebx
push 0x54e75c
lea ecx, [esp + 0xf4]
call fcn.00404de0
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0x11c]
call fcn.00404ac0
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0x154]
call fcn.00404ac0
mov eax, dword [esp + 0x28]
dec eax
cmp eax, 0xd
ja case.0x447121.2
movzx eax, byte [eax + 0x448308]
jmp dword [eax*4 + 0x4482e8]
mov ecx, ebp
call fcn.00444b50
test al, al
jne 0x4476a8
lea ecx, [esp + 0xb4]
push ecx
call fcn.00434520
add esp, 4
cmp dword [eax + 0x14], 0x10
mov byte [esp + 0x1c8], 0x15
jb 0x447157
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
lea edx, [esp + 0x90]
push edx
call fcn.0042dac0
add esp, 0xc
mov edi, 8
mov byte [esp + 0x1c8], 0x16
cmp dword [eax + 0x14], edi
jb 0x447180
mov esi, dword [eax]
jmp 0x447182
mov esi, eax
cmp dword [ebp + 0x10], ebx
jne 0x4471c3
push 0x50
call fcn.004a935a
add esp, 4
mov dword [esp + 0x108], eax
mov byte [esp + 0x1c8], 0x17
cmp eax, ebx
je 0x4471ae
push ebx
mov ecx, eax
call fcn.00430c30
jmp 0x4471b0
xor eax, eax
mov byte [esp + 0x1c8], 0x16
mov dword [ebp + 0x10], eax
cmp eax, ebx
je 0x446669
mov ecx, dword [ebp + 0x10]
push ebx
push esi
push 0x558fac
call fcn.004311d0
cmp dword [esp + 0x9c], edi
jb 0x4471eb
mov eax, dword [esp + 0x88]
push eax
call fcn.004a930e
add esp, 4
xor ecx, ecx
cmp dword [esp + 0xc8], 0x10
mov dword [esp + 0x9c], 7
mov dword [esp + 0x98], ebx
mov word [esp + 0x88], cx
mov byte [esp + 0x1c8], 0x10
jb 0x447229
mov edx, dword [esp + 0xb4]
push edx
call fcn.004a930e
add esp, 4
mov ecx, dword [0x590c70]
lea eax, [esp + 0xb4]
push eax
call fcn.00431b60
mov byte [esp + 0x1c8], 0x18
cmp dword [eax + 0x14], edi
jb 0x44724b
mov eax, dword [eax]
push eax
lea ecx, [esp + 0x8c]
push 0x54e75c
push ecx
call fcn.004463a0
add esp, 0xc
mov byte [esp + 0x1c8], 0x19
cmp dword [eax + 0x14], edi
jb 0x447272
mov esi, dword [eax]
jmp 0x447274
mov esi, eax
cmp dword [ebp + 0x10], ebx
jne 0x4472b5
push 0x50
call fcn.004a935a
add esp, 4
mov dword [esp + 0x108], eax
mov byte [esp + 0x1c8], 0x1a
cmp eax, ebx
je 0x4472a0
push ebx
mov ecx, eax
call fcn.00430c30
jmp 0x4472a2
xor eax, eax
mov byte [esp + 0x1c8], 0x19
mov dword [ebp + 0x10], eax
cmp eax, ebx
je 0x446669
mov ecx, dword [ebp + 0x10]
push ebx
push esi
push 0x551a74
call fcn.004311d0
cmp dword [esp + 0x9c], edi
jb 0x4472dd
mov edx, dword [esp + 0x88]
push edx
call fcn.004a930e
add esp, 4
xor eax, eax
mov esi, 7
mov dword [esp + 0x9c], esi
mov dword [esp + 0x98], ebx
mov word [esp + 0x88], ax
cmp dword [esp + 0xc8], edi
jb 0x447313
mov ecx, dword [esp + 0xb4]
push ecx
call fcn.004a930e
add esp, 4
mov dword [esp + 0x5c], esi
mov ecx, dword [0x58dd98]
xor edx, edx
lea eax, [esp + 0x48]
push eax
mov word [esp + 0x4c], dx
mov edx, dword [0x58dd84]
push ecx
mov ecx, dword [0x590c4c]
push edx
mov byte [esp + 0x1d4], 0x1b
mov dword [esp + 0x64], ebx
call fcn.0042cc00
push 0x20
push 3
lea eax, [esp + 0x50]
push eax
lea ecx, [esp + 0xc0]
push ecx
call fcn.0042ebe0
add esp, 0x10
push eax
lea ecx, [esp + 0x4c]
mov byte [esp + 0x1cc], 0x1c
call fcn.00405960
mov byte [esp + 0x1c8], 0x1b
cmp dword [esp + 0xc8], edi
jb 0x447394
mov edx, dword [esp + 0xb4]
push edx
call fcn.004a930e
add esp, 4
cmp dword [esp + 0x58], ebx
je 0x4473bd
mov eax, dword [esp + 0x48]
cmp dword [esp + 0x5c], edi
jae 0x4473a8
lea eax, [esp + 0x48]
push ebx
push eax
push 0x552354
mov ecx, ebp
call fcn.00444c10
mov ecx, eax
call fcn.004311d0
xor eax, eax
mov dword [esp + 0x7c], esi
mov dword [esp + 0x78], ebx
mov word [esp + 0x68], ax
mov edx, dword [0x58ddcc]
mov eax, dword [0x58dd80]
lea ecx, [esp + 0x68]
push ecx
mov ecx, dword [0x590c4c]
push edx
push eax
mov byte [esp + 0x1d4], 0x1d
call fcn.0042cc00
mov eax, dword [esp + 0x68]
cmp dword [esp + 0x7c], edi
jae 0x4473ff
lea eax, [esp + 0x68]
push ebx
push eax
push 0x552338
mov ecx, ebp
call fcn.00444c10
mov ecx, eax
call fcn.004311d0
mov edx, dword [0x58ddd0]
mov eax, dword [0x58dd80]
lea ecx, [esp + 0x68]
push ecx
mov ecx, dword [0x590c4c]
push edx
push eax
call fcn.0042cc00
mov eax, dword [esp + 0x68]
cmp dword [esp + 0x7c], edi
jae 0x44743f
lea eax, [esp + 0x68]
push ebx
push eax
push 0x552390
mov ecx, ebp
call fcn.00444c10
mov ecx, eax
call fcn.004311d0
mov edx, dword [0x58ddd4]
mov eax, dword [0x58dd80]
lea ecx, [esp + 0x68]
push ecx
mov ecx, dword [0x590c4c]
push edx
push eax
call fcn.0042cc00
mov eax, dword [esp + 0x68]
cmp dword [esp + 0x7c], edi
jae 0x44747f
lea eax, [esp + 0x68]
push ebx
push eax
push 0x552300
mov ecx, ebp
call fcn.00444c10
mov ecx, eax
call fcn.004311d0
mov edx, dword [0x58ddd8]
mov eax, dword [0x58dd80]
lea ecx, [esp + 0x68]
push ecx
mov ecx, dword [0x590c4c]
push edx
push eax
call fcn.0042cc00
mov eax, dword [esp + 0x68]
cmp dword [esp + 0x7c], edi
jae 0x4474bf
lea eax, [esp + 0x68]
push ebx
push eax
push 0x552314
mov ecx, ebp
call fcn.00444c10
mov ecx, eax
call fcn.004311d0
cmp byte [esp + 0x12], 0
mov eax, 0x54e48c
jne 0x4474e5
mov eax, 0x54e480
push ebx
push eax
push 0x552894
mov ecx, ebp
call fcn.00444c10
mov ecx, eax
call fcn.004311d0
lea ecx, [esp + 0xb4]
push ecx
mov ecx, dword [0x590c70]
call fcn.00431970
mov byte [esp + 0x1c8], 0x1e
cmp dword [eax + 0x14], edi
jb 0x44751c
mov eax, dword [eax]
push ebx
push eax
push 0x551a88
mov ecx, ebp
call fcn.00444c10
mov ecx, eax
call fcn.004311d0
mov byte [esp + 0x1c8], 0x1d
cmp dword [esp + 0xc8], edi
jb 0x447552
mov edx, dword [esp + 0xb4]
push edx
call fcn.004a930e
add esp, 4
mov ecx, dword [0x590c70]
lea eax, [esp + 0xb4]
push eax
call fcn.004318e0
mov byte [esp + 0x1c8], 0x1f
cmp dword [eax + 0x14], edi
jb 0x447574
mov eax, dword [eax]
push ebx
push eax
push 0x550698
mov ecx, ebp
call fcn.00444c10
mov ecx, eax
call fcn.004311d0
mov byte [esp + 0x1c8], 0x1d
cmp dword [esp + 0xc8], edi
jb 0x4475aa
mov ecx, dword [esp + 0xb4]
push ecx
call fcn.004a930e
add esp, 4
mov ecx, dword [0x590c70]
lea edx, [esp + 0xb4]
push edx
call fcn.00431ab0
mov byte [esp + 0x1c8], 0x20
cmp dword [eax + 0x14], edi
jb 0x4475cc
mov eax, dword [eax]
push ebx
push eax
push 0x551aac
mov ecx, ebp
call fcn.00444c10
mov ecx, eax
call fcn.004311d0
mov byte [esp + 0x1c8], 0x1d
cmp dword [esp + 0xc8], edi
jb 0x447602
mov eax, dword [esp + 0xb4]
push eax
call fcn.004a930e
add esp, 4
lea ecx, [esp + 0xb4]
push ecx
mov ecx, dword [0x590c70]
call fcn.00431b60
mov byte [esp + 0x1c8], 0x21
cmp dword [eax + 0x14], edi
jb 0x447624
mov eax, dword [eax]
push ebx
push eax
push 0x558f88
mov ecx, ebp
call fcn.00444c10
mov ecx, eax
call fcn.004311d0
mov byte [esp + 0x1c8], 0x1d
cmp dword [esp + 0xc8], edi
jb 0x44765a
mov edx, dword [esp + 0xb4]
push edx
call fcn.004a930e
add esp, 4
mov ecx, ebp
call fcn.00445490
test al, al
je 0x44806b
cmp dword [esp + 0x7c], edi
jb 0x44767c
mov eax, dword [esp + 0x68]
push eax
call fcn.004a930e
add esp, 4
xor ecx, ecx
mov dword [esp + 0x7c], esi
mov dword [esp + 0x78], ebx
mov word [esp + 0x68], cx
mov byte [esp + 0x1c8], 0x10
cmp dword [esp + 0x5c], edi
jb 0x4476ad
mov edx, dword [esp + 0x48]
push edx
call fcn.004a930e
add esp, 4
jmp 0x4476ad
mov edi, 8
mov eax, dword [esp + 0x28]
cmp eax, ebx
je 0x447880
cmp eax, 9
je 0x447879
mov esi, 0xf
mov dword [esp + 0x140], esi
mov dword [esp + 0x13c], ebx
mov byte [esp + 0x12c], 0
test byte [esp + 0x14], 2
mov byte [esp + 0x1c8], 0x22
je 0x44770b
cmp eax, 4
jne 0x44770b
cmp byte [esp + 0x11], 0
mov ecx, ebp
je 0x447701
push 0x558f5c
jmp 0x447706
push 0x558f44
call fcn.00444e10
test byte [esp + 0x14], 4
je case.default.0x447725
mov eax, dword [esp + 0x28]
add eax, 0xfffffff7
cmp eax, edi
ja case.default.0x447725
jmp dword [eax*4 + 0x448318]
push 0x558f28
mov ecx, ebp
call fcn.00444e10
push 0x558f1c
jmp 0x447833
mov eax, dword [esp + 0x164]
cmp dword [esp + 0x178], edi
jae 0x447759
lea eax, [esp + 0x164]
push ebx
push eax
push 0x552154
mov ecx, ebp
call fcn.00444c10
mov ecx, eax
call fcn.004311d0
mov eax, dword [esp + 0x180]
cmp dword [esp + 0x194], edi
jae 0x447785
lea eax, [esp + 0x180]
push ebx
push eax
push 0x552138
mov ecx, ebp
call fcn.00444c10
mov ecx, eax
call fcn.004311d0
push 0x558efc
mov ecx, ebp
call fcn.00444e10
push 0x54ef9c
jmp 0x447833
push 0x558ecc
mov ecx, ebp
call fcn.00444e10
push 0x558eb8
jmp 0x447833
push 0x558e9c
mov ecx, ebp
call fcn.00444e10
push 0x54ee88
jmp 0x447833
push 0x558e78
mov ecx, ebp
call fcn.00444e10
push 0x558e68
jmp 0x447833
push 0x558e4c
mov ecx, ebp
call fcn.00444e10
push 0x54f0a4
jmp 0x447833
push 0x558e2c
mov ecx, ebp
call fcn.00444e10
push 0x54f130
jmp 0x447833
push 0x558e14
mov ecx, ebp
call fcn.00444e10
push 0x54f040
jmp 0x447833
push 0x558df8
mov ecx, ebp
call fcn.00444e10
push 0x54f01c
lea ecx, [esp + 0x130]
call fcn.00437d90
cmp dword [esp + 0x140], 0x10
mov byte [esp + 0x1c8], 0x10
jb 0x447861
mov eax, dword [esp + 0x12c]
push eax
call fcn.004a930e
add esp, 4
mov dword [esp + 0x140], esi
mov dword [esp + 0x13c], ebx
mov byte [esp + 0x12c], 0
jmp 0x4478aa
push 0x558de0
jmp 0x4478a3
cmp byte [esp + 0x66], 0
je 0x44789e
cmp byte [esp + 0x11], 0
mov ecx, ebp
je 0x447897
push 0x558f5c
jmp 0x4478a5
push 0x558f44
jmp 0x4478a5
push 0x552474
mov ecx, ebp
call fcn.00444e10
xor esi, esi
mov ecx, ebp
mov byte [esp + 0x11], 0
xor ebx, ebx
mov dword [esp + 0x1a0], esi
call fcn.00444b50
test al, al
je 0x447b2a
lea esp, [esp]
mov edi, dword [esp + 0x1d0]
push esi
lea ecx, [esp + 0x24]
push ecx
push 0x5562b4
mov ecx, edi
mov dword [esp + 0x2c], esi
call fcn.00431670
test al, al
je 0x447b2a
mov edx, dword [esp + 0x20]
push edx
call fcn.0042d600
add esp, 4
test al, al
je 0x447b2a
push edi
mov ecx, ebp
call fcn.00445030
test al, al
je 0x447b2a
cmp dword [ebp + 0x10], esi
jne 0x44795b
push 0x50
call fcn.004a935a
add esp, 4
mov dword [esp + 0x108], eax
mov byte [esp + 0x1c8], 0x23
cmp eax, esi
je 0x447946
push esi
mov ecx, eax
call fcn.00430c30
jmp 0x447948
xor eax, eax
mov byte [esp + 0x1c8], 0x10
mov dword [ebp + 0x10], eax
cmp eax, esi
je 0x446669
mov ecx, dword [ebp + 0x10]
call fcn.00431110
cmp ebx, eax
jne 0x447974
cmp dword [esp + 0x1a0], edx
je 0x447b10
mov ebx, eax
xor eax, eax
mov dword [esp + 0x1a0], edx
mov dword [esp + 0x20], esi
mov dword [esp + 0x7c], 7
mov dword [esp + 0x78], esi
mov word [esp + 0x68], ax
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x6c]
push edx
mov ecx, ebp
mov byte [esp + 0x1d0], 0x24
call fcn.00444c80
test al, al
je 0x447af0
mov eax, dword [esp + 0x20]
cmp eax, dword [0x59125c]
je 0x447af0
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 0x68]
mov dword [0x59125c], eax
mov eax, edi
cmp esi, 8
jae 0x4479dd
lea eax, [esp + 0x68]
push 0x55228c
push eax
call fcn.00402f70
add esp, 8
test eax, eax
je 0x447c39
mov eax, edi
cmp esi, 8
jae 0x4479fe
lea eax, [esp + 0x68]
push 0x552248
push eax
call fcn.00402f70
add esp, 8
test eax, eax
je 0x447c4f
mov eax, edi
cmp esi, 8
jae 0x447a1f
lea eax, [esp + 0x68]
push 0x558dc4
push eax
call fcn.00402f70
add esp, 8
test eax, eax
je 0x447c1b
mov eax, edi
cmp esi, 8
jae 0x447a40
lea eax, [esp + 0x68]
push 0x558d8c
push eax
call fcn.00402f70
add esp, 8
test eax, eax
jne 0x447b97
cmp byte [esp + 0x12], al
mov edi, 0x54e48c
sete al
mov byte [esp + 0x12], al
test al, al
jne 0x447a6f
mov edi, 0x54e480
lea eax, [esp + 0xb4]
push eax
mov ecx, ebp
call fcn.00446280
mov esi, 8
mov byte [esp + 0x1c8], 0x27
cmp dword [eax + 0x14], esi
jb 0x447a92
mov eax, dword [eax]
mov ecx, dword [0x590c4c]
push 0
push 1
push edi
push eax
push 0x5522c8
call fcn.0042cfd0
mov byte [esp + 0x1c8], 0x24
cmp dword [esp + 0xc8], esi
jb 0x447ac9
mov ecx, dword [esp + 0xb4]
push ecx
call fcn.004a930e
add esp, 4
cmp byte [esp + 0x12], 0
mov eax, 0x54e48c
jne 0x447ada
mov eax, 0x54e480
push 0
push eax
push 0x552894
mov ecx, ebp
call fcn.00444c10
mov ecx, eax
call fcn.004311d0
mov edi, dword [esp + 0x68]
mov esi, dword [esp + 0x7c]
mov byte [esp + 0x1c8], 0x10
cmp esi, 8
jb 0x447b0e
push edi
call fcn.004a930e
add esp, 4
xor esi, esi
push 0x1f4
call dword [0x4b60c8]
mov ecx, ebp
call fcn.00444b50
test al, al
jne 0x4478d0
mov dword [esp + 0x18], 4
mov dword [esp + 0x14], 1
cmp dword [esp + 0x40], 8
jb 0x447b4e
mov ecx, dword [esp + 0x2c]
push ecx
call fcn.004a930e
add esp, 4
xor edx, edx
cmp dword [esp + 0xe4], 0x10
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], 0
mov word [esp + 0x2c], dx
mov byte [esp + 0x1c8], 0xb
jb 0x447b87
mov eax, dword [esp + 0xd0]
push eax
call fcn.004a930e
add esp, 4
cmp dword [esp + 0x18], 0
jne 0x448108
jmp 0x446b4b
mov eax, edi
cmp esi, 8
jae 0x447ba2
lea eax, [esp + 0x68]
push 0x558d7c
push eax
call fcn.00402f70
add esp, 8
test eax, eax
je 0x447dda
mov eax, edi
cmp esi, 8
jae 0x447bc3
lea eax, [esp + 0x68]
push 0x554010
push eax
call fcn.00402f70
add esp, 8
test eax, eax
je 0x447dcc
mov eax, edi
cmp esi, 8
jae 0x447be4
lea eax, [esp + 0x68]
push 0x558d64
push eax
call fcn.00402f70
add esp, 8
test eax, eax
je 0x447dda
mov eax, edi
cmp esi, 8
jae 0x447c05
lea eax, [esp + 0x68]
push 0x558d44
push eax
call fcn.00402f70
add esp, 8
test eax, eax
jne 0x447af8
lea ecx, [esp + 0x68]
mov dword [esp + 0x18], 4
mov dword [esp + 0x14], 1
call fcn.00402930
jmp 0x447b3a
lea ecx, [esp + 0x68]
mov dword [esp + 0x14], 2
call fcn.00402930
jmp 0x447b3a
push 0x558cf0
push 0x558cd4
push 1
call fcn.004033d0
push eax
call fcn.004279c0
add esp, 0x10
push 0
lea edx, [esp + 0xf0]
push edx
push 0x551ae8
mov ecx, ebp
call fcn.00444c10
mov ecx, eax
call fcn.004313e0
test al, al
je 0x447ccc
cmp dword [esp + 0xfc], 0
je 0x447ccc
push 0x54e75c
lea ecx, [esp + 0x114]
call fcn.004057c0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x154]
call fcn.00404ac0
lea ecx, [esp + 0x68]
mov dword [esp + 0x14], 4
call fcn.00402930
jmp 0x447b3a
push 0x54e75c
lea ecx, [esp + 0xf0]
call fcn.004057c0
push 0
lea eax, [esp + 0x14c]
push eax
push 0x550c44
mov ecx, ebp
call fcn.00444c10
mov ecx, eax
call fcn.004313e0
push 0
lea ecx, [esp + 0x114]
push ecx
push 0x551acc
mov ecx, ebp
call fcn.00444c10
mov ecx, eax
call fcn.004313e0
mov eax, dword [esp + 0x148]
mov esi, 8
cmp dword [esp + 0x15c], esi
jae 0x447d33
lea eax, [esp + 0x148]
push eax
lea edx, [esp + 0xb8]
push edx
call fcn.00439640
add esp, 8
push eax
lea ecx, [esp + 0x14c]
mov byte [esp + 0x1cc], 0x25
call fcn.00405960
lea ecx, [esp + 0xb4]
mov byte [esp + 0x1c8], 0x24
call fcn.00402930
mov eax, dword [esp + 0x110]
cmp dword [esp + 0x124], esi
jae 0x447d84
lea eax, [esp + 0x110]
push eax
lea eax, [esp + 0xb8]
push eax
call fcn.00439640
add esp, 8
push eax
lea ecx, [esp + 0x114]
mov byte [esp + 0x1cc], 0x26
call fcn.00405960
lea ecx, [esp + 0xb4]
call fcn.00402930
lea ecx, [esp + 0x68]
mov dword [esp + 0x14], 4
call fcn.00402930
jmp 0x447b3a
push 0
push 0x5521bc
mov ecx, ebp
call fcn.00445860
mov eax, 1
lea ecx, [esp + 0x68]
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], eax
call fcn.00402930
jmp 0x447b3a
push ebx
push 0x558c90
mov ecx, ebp
call fcn.00445860
mov eax, 8
cmp dword [esp + 0x40], eax
mov dword [esp + 0x18], eax
jb 0x447e1e
mov ecx, dword [esp + 0x2c]
push ecx
call fcn.004a930e
add esp, 4
mov dword [esp + 0x40], 7
jmp 0x4480db
push ebx
push 0x558c64
mov ecx, ebp
call fcn.00445860
cmp dword [esp + 0x40], 8
mov dword [esp + 0x18], 3
jmp 0x447e0f
push ebx
push 0x558c38
mov ecx, ebp
call fcn.00445860
cmp dword [esp + 0x40], 8
mov esi, 7
mov dword [esp + 0x18], esi
jmp 0x4480c8
push ebx
push 0x558c00
mov ecx, ebp
call fcn.00445860
cmp dword [esp + 0x40], 8
mov dword [esp + 0x18], 6
jmp 0x447e0f
mov eax, dword [esp + 0x2c]
mov esi, 8
cmp dword [esp + 0x40], esi
jae 0x447e96
lea eax, [esp + 0x2c]
push eax
push 0x5550e8
lea ecx, [esp + 0x90]
push 0x200
push ecx
call fcn.0042ee60
add esp, 0x10
mov eax, dword [esp + 0x88]
mov byte [esp + 0x1c8], 0x13
cmp dword [esp + 0x9c], esi
jae 0x447ed0
lea eax, [esp + 0x88]
push eax
push 0x558bd8
mov ecx, ebp
call fcn.00445860
mov dword [esp + 0x18], 2
cmp dword [esp + 0x9c], esi
jb 0x447efe
mov edx, dword [esp + 0x88]
push edx
call fcn.004a930e
add esp, 4
cmp dword [esp + 0x40], esi
jb 0x447f11
mov eax, dword [esp + 0x2c]
push eax
call fcn.004a930e
add esp, 4
xor ecx, ecx
cmp dword [esp + 0xe4], 0x10
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], ebx
mov word [esp + 0x2c], cx
mov byte [esp + 0x1c8], 0xb
jb 0x448108
mov edx, dword [esp + 0xd0]
push edx
jmp 0x448100
mov eax, dword [esp + 0x84]
push eax
mov eax, dword [eax*4 + 0x58ddf0]
push eax
push 0x558bbc
lea ecx, [esp + 0x94]
push 0x200
push ecx
call fcn.0042ee60
add esp, 0x14
mov eax, dword [esp + 0x88]
mov esi, 8
mov byte [esp + 0x1c8], 0x14
cmp dword [esp + 0x9c], esi
jae 0x447f95
lea eax, [esp + 0x88]
push eax
push 0x558bd8
mov ecx, ebp
call fcn.00445860
mov dword [esp + 0x18], 3
cmp dword [esp + 0x9c], esi
jb 0x447fc3
mov edx, dword [esp + 0x88]
push edx
call fcn.004a930e
add esp, 4
cmp dword [esp + 0x40], esi
jb 0x447fd6
mov eax, dword [esp + 0x2c]
push eax
call fcn.004a930e
add esp, 4
xor ecx, ecx
cmp dword [esp + 0xe4], 0x10
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], ebx
mov word [esp + 0x2c], cx
mov byte [esp + 0x1c8], 0xb
jb 0x448108
mov edx, dword [esp + 0xd0]
push edx
jmp 0x448100
push ebx
push 0x5521bc
mov ecx, ebp
call fcn.00445860
cmp dword [esp + 0x40], 8
mov dword [esp + 0x18], 1
jb 0x448035
mov eax, dword [esp + 0x2c]
push eax
call fcn.004a930e
add esp, 4
xor ecx, ecx
cmp dword [esp + 0xe4], 0x10
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], ebx
mov word [esp + 0x2c], cx
mov byte [esp + 0x1c8], 0xb
jb 0x448108
mov edx, dword [esp + 0xd0]
push edx
jmp 0x448100
push ebx
push 0x5521bc
mov ecx, ebp
call fcn.00445860
mov dword [esp + 0x18], 1
cmp dword [esp + 0x7c], edi
jb 0x448093
mov eax, dword [esp + 0x68]
push eax
call fcn.004a930e
add esp, 4
xor ecx, ecx
mov dword [esp + 0x7c], esi
mov dword [esp + 0x78], ebx
mov word [esp + 0x68], cx
cmp dword [esp + 0x5c], edi
jb 0x4480b5
mov edx, dword [esp + 0x48]
push edx
call fcn.004a930e
add esp, 4
xor eax, eax
cmp dword [esp + 0x40], edi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x58], ebx
mov word [esp + 0x48], ax
jb 0x4480d7
mov ecx, dword [esp + 0x2c]
push ecx
call fcn.004a930e
add esp, 4
mov dword [esp + 0x40], esi
xor edx, edx
cmp dword [esp + 0xe4], 0x10
mov byte [esp + 0x1c8], 0xb
mov word [esp + 0x2c], dx
mov dword [esp + 0x3c], ebx
jb 0x448108
mov eax, dword [esp + 0xd0]
push eax
call fcn.004a930e
add esp, 4
cmp byte [esp + 0x1f], 0
je 0x44813c
push 0x558b9c
mov ecx, 0x591240
call fcn.00444e10
mov ecx, dword [esp + 0x1d0]
xor ebx, ebx
push ebx
push 1
push 0x558fd4
call fcn.004315a0
lea edi, [ebx + 8]
jmp 0x4481b8
cmp dword [esp + 0x18], 4
jne 0x448152
push 0x558b7c
mov ecx, 0x591240
call fcn.00444e10
lea ecx, [esp + 0xb4]
push ecx
mov ecx, dword [0x590c70]
call fcn.00431df0
push eax
lea edx, [esp + 0x8c]
push edx
mov byte [esp + 0x1d0], 0x28
call fcn.0041bde0
mov edi, 8
add esp, 8
cmp dword [esp + 0xc8], edi
jb 0x44819c
mov eax, dword [esp + 0xb4]
push eax
call fcn.004a930e
add esp, 4
cmp dword [esp + 0x9c], 0x10
jb 0x4481b6
mov ecx, dword [esp + 0x88]
push ecx
call fcn.004a930e
add esp, 4
xor ebx, ebx
mov esi, 7
cmp dword [esp + 0x1b8], edi
jb 0x4481d6
mov edx, dword [esp + 0x1a4]
push edx
call fcn.004a930e
add esp, 4
xor eax, eax
mov dword [esp + 0x1b8], esi
mov dword [esp + 0x1b4], ebx
mov word [esp + 0x1a4], ax
cmp dword [esp + 0x194], edi
jb 0x448207
mov ecx, dword [esp + 0x180]
push ecx
call fcn.004a930e
add esp, 4
xor edx, edx
mov dword [esp + 0x194], esi
mov dword [esp + 0x190], ebx
mov word [esp + 0x180], dx
cmp dword [esp + 0x178], edi
jb 0x448238
mov eax, dword [esp + 0x164]
push eax
call fcn.004a930e
add esp, 4
xor ecx, ecx
mov dword [esp + 0x178], esi
mov dword [esp + 0x174], ebx
mov word [esp + 0x164], cx
cmp dword [esp + 0x100], edi
jb 0x448269
mov edx, dword [esp + 0xec]
push edx
call fcn.004a930e
add esp, 4
xor eax, eax
mov dword [esp + 0x100], esi
mov dword [esp + 0xfc], ebx
mov word [esp + 0xec], ax
cmp dword [esp + 0x124], edi
jb 0x44829a
mov ecx, dword [esp + 0x110]
push ecx
call fcn.004a930e
add esp, 4
xor edx, edx
mov dword [esp + 0x124], esi
mov dword [esp + 0x120], ebx
mov word [esp + 0x110], dx
cmp dword [esp + 0x15c], edi
jb 0x4482cb
mov eax, dword [esp + 0x148]
push eax
call fcn.004a930e
add esp, 4
mov ecx, dword [esp + 0x1c0]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x1bc
ret 4