Function at 0x44deb0
Capabilities:
Check for software breakpoints

Disassembly:
sub esp, 0x18c
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x1a4]
mov eax, dword [edi + 0xc]
cmp eax, 0x183
mov dword [esp + 0x14], eax
ja case.0x44deda.397
movzx ecx, byte [eax + 0x451518]
jmp dword [ecx*4 + 0x4513c0]
lea ebx, [eax - 2]
test bl, 8
mov dword [esp + 0x28], ebx
je 0x44df28
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
je 0x44df13
mov edx, dword [esp + 0x1ac]
push edx
push esi
call fcn.00424170
mov eax, dword [esi + 8]
mov ecx, dword [esi]
jmp 0x44df42
mov eax, dword [esp + 0x1ac]
push eax
push esi
call fcn.00424170
mov eax, dword [esi + 8]
mov ecx, dword [esi]
jmp 0x44df42
mov ecx, dword [esp + 0x1ac]
mov dl, byte [ecx + 4]
cmp dl, 0xff
lea eax, [ecx + 5]
jne 0x44df3f
mov ecx, dword [ecx - 4]
jmp 0x44df42
movzx ecx, dl
test bl, 1
je 0x44e799
mov edx, dword [edi + 0x14]
add edi, 0x18
test bl, 2
je 0x44e229
test bl, 4
je 0x44df6f
push edx
push edi
push ecx
push eax
call fcn.0043f5f0
mov esi, eax
jmp 0x44ed7c
test edx, edx
mov dword [esp + 0x18], edx
mov dword [esp + 0x24], edi
je 0x44ea94
mov dword [esp + 0x20], eax
mov dword [esp + 0x14], ecx
jmp 0x44df90
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x24]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x10], 0
je 0x44eac7
mov cl, byte [edi]
mov bl, byte [esi]
mov edx, dword [0x58b5d4]
movzx eax, cl
cmp byte [eax + edx], bl
jne 0x44dfd4
sub dword [esp + 0x10], 1
add edi, 1
add esi, 1
sub ebp, 1
jmp 0x44e14a
test cl, cl
jns 0x44e1aa
cmp dword [esp + 0x10], 2
jl 0x44e00f
mov dl, cl
and dl, 0xe0
cmp dl, 0xc0
jne 0x44e00f
movzx ecx, byte [edi + 1]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
or ecx, eax
push ecx
call fcn.00421a20
add edi, 2
sub dword [esp + 0x10], 2
jmp 0x44e09b
cmp dword [esp + 0x10], 3
jl 0x44e04b
mov dl, cl
and dl, 0xf0
cmp dl, 0xe0
jne 0x44e04b
movzx ecx, byte [edi + 1]
movzx edx, byte [edi + 2]
and ecx, 0x3f
and eax, 0xf
shl eax, 6
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
push ecx
call fcn.00421a20
add edi, 3
sub dword [esp + 0x10], 3
jmp 0x44e09b
cmp dword [esp + 0x10], 4
jl 0x44e091
and cl, 0xf8
cmp cl, 0xf0
jne 0x44e091
movzx ecx, byte [edi + 1]
movzx edx, byte [edi + 2]
and ecx, 0x3f
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [edi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
push ecx
call fcn.00421a20
add edi, 4
sub dword [esp + 0x10], 4
jmp 0x44e09b
xor eax, eax
add edi, 1
sub dword [esp + 0x10], 1
test bl, bl
jns 0x44e13d
cmp ebp, 2
jl 0x44e0c9
mov cl, bl
and cl, 0xe0
cmp cl, 0xc0
jne 0x44e0c9
movzx ecx, byte [esi + 1]
and ebx, 0x1f
and ecx, 0x3f
shl ebx, 6
or ecx, ebx
add esi, 2
sub ebp, 2
jmp 0x44e146
cmp ebp, 3
jl 0x44e0fb
mov dl, bl
and dl, 0xf0
cmp dl, 0xe0
jne 0x44e0fb
movzx ecx, byte [esi + 1]
movzx edx, byte [esi + 2]
and ecx, 0x3f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 3
sub ebp, 3
jmp 0x44e146
cmp ebp, 4
jl 0x44e139
mov cl, bl
and cl, 0xf8
cmp cl, 0xf0
jne 0x44e139
movzx ecx, byte [esi + 1]
movzx edx, byte [esi + 2]
and ecx, 0x3f
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 4
sub ebp, 4
jmp 0x44e146
xor ecx, ecx
jmp 0x44e140
movzx ecx, bl
add esi, 1
sub ebp, 1
cmp eax, ecx
jne 0x44e1aa
test ebp, ebp
jne 0x44dfa4
mov al, byte [esi - 1]
cmp al, 0x61
jb 0x44e15d
cmp al, 0x7a
jbe 0x44e179
cmp al, 0x41
jb 0x44e165
cmp al, 0x5a
jbe 0x44e179
cmp al, 0x30
jb 0x44e16d
cmp al, 0x39
jbe 0x44e179
cmp al, 0x5f
je 0x44e179
test al, al
jns 0x44ea94
cmp dword [esp + 0x10], 0
je 0x44ea94
mov al, byte [edi]
cmp al, 0x61
jb 0x44e18e
cmp al, 0x7a
jbe 0x44e1aa
cmp al, 0x41
jb 0x44e196
cmp al, 0x5a
jbe 0x44e1aa
cmp al, 0x30
jb 0x44e19e
cmp al, 0x39
jbe 0x44e1aa
cmp al, 0x5f
je 0x44e1aa
test al, al
jns 0x44ea94
mov eax, dword [esp + 0x24]
mov cl, byte [eax]
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
jmp 0x44e1c0
add edx, 1
sub esi, 1
cmp cl, 0x61
mov dword [esp + 0x20], edx
mov dword [esp + 0x14], esi
jb 0x44e1d8
cmp cl, 0x7a
jbe 0x44e1f9
cmp cl, 0x41
jb 0x44e1e2
cmp cl, 0x5a
jbe 0x44e1f9
cmp cl, 0x30
jb 0x44e1ec
cmp cl, 0x39
jbe 0x44e1f9
cmp cl, 0x5f
je 0x44e1f9
test cl, cl
jns 0x44df90
test esi, esi
je 0x44df90
mov al, byte [edx - 1]
cmp al, 0x61
jb 0x44e20c
cmp al, 0x7a
jbe 0x44e1c0
cmp al, 0x41
jb 0x44e214
cmp al, 0x5a
jbe 0x44e1c0
cmp al, 0x30
jb 0x44e21c
cmp al, 0x39
jbe 0x44e1c0
cmp al, 0x5f
je 0x44e1c0
test al, al
js 0x44e1c0
jmp 0x44df90
test bl, 4
mov dword [esp + 0x18], edx
mov dword [esp + 0x24], edi
je 0x44e4e9
test edx, edx
je 0x44ea94
mov dword [esp + 0x20], eax
mov dword [esp + 0x14], ecx
lea ebx, [ebx]
mov ecx, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x24]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x10], ecx
cmp dword [esp + 0x10], 0
je 0x44eac7
mov cl, byte [edi]
mov bl, byte [esi]
mov edx, dword [0x58b5d0]
movzx eax, cl
cmp byte [eax + edx], bl
jne 0x44e294
sub dword [esp + 0x10], 1
add edi, 1
add esi, 1
sub ebp, 1
jmp 0x44e40a
test cl, cl
jns 0x44e46a
cmp dword [esp + 0x10], 2
jl 0x44e2cf
mov dl, cl
and dl, 0xe0
cmp dl, 0xc0
jne 0x44e2cf
movzx ecx, byte [edi + 1]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
or ecx, eax
push ecx
call fcn.00409910
add edi, 2
sub dword [esp + 0x10], 2
jmp 0x44e35b
cmp dword [esp + 0x10], 3
jl 0x44e30b
mov dl, cl
and dl, 0xf0
cmp dl, 0xe0
jne 0x44e30b
movzx ecx, byte [edi + 1]
movzx edx, byte [edi + 2]
and ecx, 0x3f
and eax, 0xf
shl eax, 6
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
push ecx
call fcn.00409910
add edi, 3
sub dword [esp + 0x10], 3
jmp 0x44e35b
cmp dword [esp + 0x10], 4
jl 0x44e351
and cl, 0xf8
cmp cl, 0xf0
jne 0x44e351
movzx ecx, byte [edi + 1]
movzx edx, byte [edi + 2]
and ecx, 0x3f
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [edi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
push ecx
call fcn.00409910
add edi, 4
sub dword [esp + 0x10], 4
jmp 0x44e35b
xor eax, eax
add edi, 1
sub dword [esp + 0x10], 1
test bl, bl
jns 0x44e3fd
cmp ebp, 2
jl 0x44e389
mov cl, bl
and cl, 0xe0
cmp cl, 0xc0
jne 0x44e389
movzx edx, byte [esi + 1]
and ebx, 0x1f
shl ebx, 6
and edx, 0x3f
or ebx, edx
add esi, 2
sub ebp, 2
jmp 0x44e406
cmp ebp, 3
jl 0x44e3bb
mov cl, bl
and cl, 0xf0
cmp cl, 0xe0
jne 0x44e3bb
movzx edx, byte [esi + 1]
movzx ecx, byte [esi + 2]
and ebx, 0xf
shl ebx, 6
and edx, 0x3f
or ebx, edx
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
add esi, 3
sub ebp, 3
jmp 0x44e406
cmp ebp, 4
jl 0x44e3f9
mov dl, bl
and dl, 0xf8
cmp dl, 0xf0
jne 0x44e3f9
movzx ecx, byte [esi + 1]
movzx edx, byte [esi + 2]
and ebx, 7
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
movzx ecx, byte [esi + 3]
shl ebx, 6
and edx, 0x3f
or ebx, edx
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
add esi, 4
sub ebp, 4
jmp 0x44e406
xor ebx, ebx
jmp 0x44e400
movzx ebx, bl
add esi, 1
sub ebp, 1
cmp eax, ebx
jne 0x44e46a
test ebp, ebp
jne 0x44e264
mov al, byte [esi - 1]
cmp al, 0x61
jb 0x44e41d
cmp al, 0x7a
jbe 0x44e439
cmp al, 0x41
jb 0x44e425
cmp al, 0x5a
jbe 0x44e439
cmp al, 0x30
jb 0x44e42d
cmp al, 0x39
jbe 0x44e439
cmp al, 0x5f
je 0x44e439
test al, al
jns 0x44ea94
cmp dword [esp + 0x10], 0
je 0x44ea94
mov al, byte [edi]
cmp al, 0x61
jb 0x44e44e
cmp al, 0x7a
jbe 0x44e46a
cmp al, 0x41
jb 0x44e456
cmp al, 0x5a
jbe 0x44e46a
cmp al, 0x30
jb 0x44e45e
cmp al, 0x39
jbe 0x44e46a
cmp al, 0x5f
je 0x44e46a
test al, al
jns 0x44ea94
mov edx, dword [esp + 0x24]
mov cl, byte [edx]
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
jmp 0x44e480
add edx, 1
sub esi, 1
cmp cl, 0x61
mov dword [esp + 0x20], edx
mov dword [esp + 0x14], esi
jb 0x44e498
cmp cl, 0x7a
jbe 0x44e4b9
cmp cl, 0x41
jb 0x44e4a2
cmp cl, 0x5a
jbe 0x44e4b9
cmp cl, 0x30
jb 0x44e4ac
cmp cl, 0x39
jbe 0x44e4b9
cmp cl, 0x5f
je 0x44e4b9
test cl, cl
jns 0x44e250
test esi, esi
je 0x44e250
mov al, byte [edx - 1]
cmp al, 0x61
jb 0x44e4cc
cmp al, 0x7a
jbe 0x44e480
cmp al, 0x41
jb 0x44e4d4
cmp al, 0x5a
jbe 0x44e480
cmp al, 0x30
jb 0x44e4dc
cmp al, 0x39
jbe 0x44e480
cmp al, 0x5f
je 0x44e480
test al, al
js 0x44e480
jmp 0x44e250
test edx, edx
je 0x44ea94
mov dword [esp + 0x20], eax
mov dword [esp + 0x14], ecx
lea esp, [esp]
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x24]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x10], 0
je 0x44eac7
mov cl, byte [edi]
mov bl, byte [esi]
mov edx, dword [0x58b5d0]
movzx eax, cl
cmp byte [eax + edx], bl
jne 0x44e544
sub dword [esp + 0x10], 1
add edi, 1
add esi, 1
sub ebp, 1
jmp 0x44e6ba
test cl, cl
jns 0x44e71a
cmp dword [esp + 0x10], 2
jl 0x44e57f
mov dl, cl
and dl, 0xe0
cmp dl, 0xc0
jne 0x44e57f
movzx ecx, byte [edi + 1]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
or ecx, eax
push ecx
call fcn.00409960
add edi, 2
sub dword [esp + 0x10], 2
jmp 0x44e60b
cmp dword [esp + 0x10], 3
jl 0x44e5bb
mov dl, cl
and dl, 0xf0
cmp dl, 0xe0
jne 0x44e5bb
movzx ecx, byte [edi + 1]
movzx edx, byte [edi + 2]
and ecx, 0x3f
and eax, 0xf
shl eax, 6
or ecx, eax
shl ecx, 6
and edx, 0x3f
or ecx, edx
push ecx
call fcn.00409960
add edi, 3
sub dword [esp + 0x10], 3
jmp 0x44e60b
cmp dword [esp + 0x10], 4
jl 0x44e601
and cl, 0xf8
cmp cl, 0xf0
jne 0x44e601
movzx ecx, byte [edi + 1]
movzx edx, byte [edi + 2]
and ecx, 0x3f
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [edi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or ecx, eax
push ecx
call fcn.00409960
add edi, 4
sub dword [esp + 0x10], 4
jmp 0x44e60b
xor eax, eax
add edi, 1
sub dword [esp + 0x10], 1
test bl, bl
jns 0x44e6ad
cmp ebp, 2
jl 0x44e639
mov cl, bl
and cl, 0xe0
cmp cl, 0xc0
jne 0x44e639
movzx edx, byte [esi + 1]
and ebx, 0x1f
shl ebx, 6
and edx, 0x3f
or ebx, edx
add esi, 2
sub ebp, 2
jmp 0x44e6b6
cmp ebp, 3
jl 0x44e66b
mov cl, bl
and cl, 0xf0
cmp cl, 0xe0
jne 0x44e66b
movzx edx, byte [esi + 1]
movzx ecx, byte [esi + 2]
and ebx, 0xf
shl ebx, 6
and edx, 0x3f
or ebx, edx
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
add esi, 3
sub ebp, 3
jmp 0x44e6b6
cmp ebp, 4
jl 0x44e6a9
mov dl, bl
and dl, 0xf8
cmp dl, 0xf0
jne 0x44e6a9
movzx ecx, byte [esi + 1]
movzx edx, byte [esi + 2]
and ebx, 7
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
movzx ecx, byte [esi + 3]
shl ebx, 6
and edx, 0x3f
or ebx, edx
shl ebx, 6
and ecx, 0x3f
or ebx, ecx
add esi, 4
sub ebp, 4
jmp 0x44e6b6
xor ebx, ebx
jmp 0x44e6b0
movzx ebx, bl
add esi, 1
sub ebp, 1
cmp eax, ebx
jne 0x44e71a
test ebp, ebp
jne 0x44e514
mov al, byte [esi - 1]
cmp al, 0x61
jb 0x44e6cd
cmp al, 0x7a
jbe 0x44e6e9
cmp al, 0x41
jb 0x44e6d5
cmp al, 0x5a
jbe 0x44e6e9
cmp al, 0x30
jb 0x44e6dd
cmp al, 0x39
jbe 0x44e6e9
cmp al, 0x5f
je 0x44e6e9
test al, al
jns 0x44ea94
cmp dword [esp + 0x10], 0
je 0x44ea94
mov al, byte [edi]
cmp al, 0x61
jb 0x44e6fe
cmp al, 0x7a
jbe 0x44e71a
cmp al, 0x41
jb 0x44e706
cmp al, 0x5a
jbe 0x44e71a
cmp al, 0x30
jb 0x44e70e
cmp al, 0x39
jbe 0x44e71a
cmp al, 0x5f
je 0x44e71a
test al, al
jns 0x44ea94
mov edx, dword [esp + 0x24]
mov cl, byte [edx]
mov edx, dword [esp + 0x20]
mov esi, dword [esp + 0x14]
jmp 0x44e730
add edx, 1
sub esi, 1
cmp cl, 0x61
mov dword [esp + 0x20], edx
mov dword [esp + 0x14], esi
jb 0x44e748
cmp cl, 0x7a
jbe 0x44e769
cmp cl, 0x41
jb 0x44e752
cmp cl, 0x5a
jbe 0x44e769
cmp cl, 0x30
jb 0x44e75c
cmp cl, 0x39
jbe 0x44e769
cmp cl, 0x5f
je 0x44e769
test cl, cl
jns 0x44e500
test esi, esi
je 0x44e500
mov al, byte [edx - 1]
cmp al, 0x61
jb 0x44e77c
cmp al, 0x7a
jbe 0x44e730
cmp al, 0x41
jb 0x44e784
cmp al, 0x5a
jbe 0x44e730
cmp al, 0x30
jb 0x44e78c
cmp al, 0x39
jbe 0x44e730
cmp al, 0x5f
je 0x44e730
test al, al
js 0x44e730
jmp 0x44e500
test bl, 2
je 0x44ea9e
test bl, 4
je 0x44e7bd
mov edx, dword [edi + 0x14]
push edx
add edi, 0x18
push edi
push ecx
push eax
call fcn.0051dff0
mov esi, eax
jmp 0x44ed7c
mov ebx, dword [edi + 0x14]
cmp ebx, ecx
lea esi, [edi + 0x18]
mov dword [esp + 0x38], esi
jle 0x44e7d2
xor esi, esi
jmp 0x44ed7c
lea edi, [ecx + eax]
sub eax, esi
mov edx, eax
sub edx, ebx
add edx, ecx
lea ebp, [esi + ebx]
mov dword [esp + 0x34], edx
mov ecx, ebp
sub ecx, esi
mov edx, edi
sub edx, esi
mov dword [esp + 0x24], ebp
mov dword [esp + 0x20], eax
mov dword [esp + 0x30], ecx
mov dword [esp + 0x2c], edx
lea esp, [esp]
mov edi, eax
lea eax, [esi + 3]
mov dword [esp + 0x14], eax
lea eax, [esi + 4]
lea ebp, [esi + 2]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], edx
jmp 0x44e820
cmp esi, dword [esp + 0x24]
jae 0x44ea94
mov al, byte [esi + edi]
mov bl, byte [esi]
mov edx, dword [0x58b5d4]
movzx ecx, al
cmp byte [ecx + edx], bl
jne 0x44e858
mov eax, 1
add dword [esp + 0x1c], eax
add dword [esp + 0x14], eax
sub dword [esp + 0x10], eax
add esi, eax
add ebp, eax
sub dword [esp + 0x18], eax
jmp 0x44e820
test al, al
jns 0x44ea6c
mov ecx, dword [esp + 0x10]
sub ecx, edi
cmp ecx, 2
jl 0x44e897
mov dl, al
and dl, 0xe0
cmp dl, 0xc0
jne 0x44e897
movzx ecx, byte [esi + edi]
movzx eax, byte [esi + edi + 1]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or eax, ecx
push eax
call fcn.00421a20
add edi, 1
jmp 0x44e918
cmp ecx, 3
jl 0x44e8d2
mov dl, al
and dl, 0xf0
cmp dl, 0xe0
jne 0x44e8d2
movzx ecx, byte [esi + edi]
movzx eax, byte [esi + edi + 1]
movzx edx, byte [esi + edi + 2]
and eax, 0x3f
and ecx, 0xf
shl ecx, 6
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
push eax
call fcn.00421a20
add edi, 2
jmp 0x44e918
cmp ecx, 4
jl 0x44e916
and al, 0xf8
cmp al, 0xf0
jne 0x44e916
movzx ecx, byte [esi + edi]
movzx eax, byte [esi + edi + 1]
movzx edx, byte [esi + edi + 2]
and eax, 0x3f
and ecx, 7
shl ecx, 6
or eax, ecx
movzx ecx, byte [esi + edi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
push eax
call fcn.00421a20
add edi, 3
jmp 0x44e918
xor eax, eax
test bl, bl
jns 0x44ea35
mov edx, dword [esp + 0x24]
cmp ebp, edx
ja 0x44e966
mov cl, bl
and cl, 0xe0
cmp cl, 0xc0
jne 0x44e966
movzx edx, byte [esi + 1]
and ebx, 0x1f
mov ecx, 2
add dword [esp + 0x1c], ecx
add dword [esp + 0x14], ecx
sub dword [esp + 0x10], ecx
sub dword [esp + 0x18], ecx
and edx, 0x3f
shl ebx, 6
or ebx, edx
mov edx, 1
add esi, ecx
add ebp, ecx
sub edi, edx
jmp 0x44ea51
mov ecx, dword [esp + 0x14]
cmp ecx, edx
ja 0x44e9bd
mov dl, bl
and dl, 0xf0
cmp dl, 0xe0
jne 0x44e9bd
movzx edx, byte [esi + 1]
add dword [esp + 0x1c], 3
and ebx, 0xf
and edx, 0x3f
shl ebx, 6
or ebx, edx
movzx edx, byte [ebp]
and edx, 0x3f
shl ebx, 6
or ebx, edx
mov edx, 3
sub dword [esp + 0x10], edx
sub dword [esp + 0x18], edx
add ecx, edx
add ebp, edx
add esi, 3
mov dword [esp + 0x14], ecx
sub edi, 2
mov edx, 1
jmp 0x44ea51
mov edx, dword [esp + 0x1c]
cmp edx, dword [esp + 0x24]
ja 0x44ea1e
mov dl, bl
and dl, 0xf8
cmp dl, 0xf0
jne 0x44ea1e
movzx edx, byte [esi + 1]
add dword [esp + 0x1c], 4
and ebx, 7
and edx, 0x3f
shl ebx, 6
or ebx, edx
movzx edx, byte [ebp]
and edx, 0x3f
shl ebx, 6
or ebx, edx
movzx edx, byte [ecx]
and edx, 0x3f
shl ebx, 6
or ebx, edx
mov edx, 4
sub dword [esp + 0x10], edx
sub dword [esp + 0x18], edx
add ecx, edx
add ebp, edx
add esi, 4
mov dword [esp + 0x14], ecx
sub edi, 3
mov edx, 1
jmp 0x44ea51
add dword [esp + 0x1c], 1
mov edx, 1
xor ebx, ebx
add esi, 1
add ecx, edx
mov dword [esp + 0x14], ecx
jmp 0x44ea47
mov edx, 1
add dword [esp + 0x1c], edx
add esi, edx
add dword [esp + 0x14], edx
movzx ebx, bl
sub dword [esp + 0x10], edx
add ebp, edx
sub dword [esp + 0x18], edx
cmp eax, ebx
jne 0x44ea71
mov eax, dword [esp + 0x10]
sub eax, edi
cmp eax, dword [esp + 0x18]
jge 0x44e820
xor esi, esi
jmp 0x44ed7c
mov edx, 1
mov ecx, dword [esp + 0x20]
cmp ecx, dword [esp + 0x34]
je 0x44eac7
add dword [esp + 0x20], edx
mov esi, dword [esp + 0x38]
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x20]
jmp 0x44e800
mov esi, 1
jmp 0x44ed7c
test bl, 4
je 0x44eab9
mov edx, dword [edi + 0x14]
push edx
add edi, 0x18
push edi
push ecx
push eax
call fcn.0041d620
mov esi, eax
jmp 0x44ed7c
mov esi, dword [edi + 0x14]
cmp esi, ecx
lea edx, [edi + 0x18]
mov dword [esp + 0x30], edx
jle 0x44eace
xor esi, esi
jmp 0x44ed7c
lea edi, [ecx + eax]
sub eax, edx
lea ebx, [edx + esi]
mov dword [esp + 0x20], eax
sub eax, esi
mov dword [esp + 0x24], ebx
sub ebx, edx
add eax, ecx
sub edi, edx
mov dword [esp + 0x34], eax
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x38], edi
mov edx, 1
jmp 0x44eb00
mov esi, dword [esp + 0x30]
mov ecx, dword [esp + 0x38]
mov edi, dword [esp + 0x20]
lea eax, [esi + 3]
mov dword [esp + 0x1c], eax
lea eax, [esi + 4]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x2c]
lea ebp, [esi + 2]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], ecx
lea esp, [esp]
cmp esi, dword [esp + 0x24]
jae 0x44ed7a
mov al, byte [esi + edi]
mov bl, byte [esi]
mov ecx, dword [0x58b5d0]
movzx edx, al
cmp byte [edx + ecx], bl
jne 0x44eb68
mov edx, 1
add dword [esp + 0x18], edx
add dword [esp + 0x1c], edx
sub dword [esp + 0x10], edx
add esi, edx
add ebp, edx
sub dword [esp + 0x14], edx
jmp 0x44eb30
test al, al
jns 0x44ed5e
mov ecx, dword [esp + 0x10]
sub ecx, edi
cmp ecx, 2
jl 0x44eba7
mov dl, al
and dl, 0xe0
cmp dl, 0xc0
jne 0x44eba7
movzx eax, byte [esi + edi]
movzx ecx, byte [esi + edi + 1]
and eax, 0x1f
shl eax, 6
and ecx, 0x3f
or eax, ecx
push eax
call fcn.00409960
add edi, 1
jmp 0x44ec28
cmp ecx, 3
jl 0x44ebe2
mov dl, al
and dl, 0xf0
cmp dl, 0xe0
jne 0x44ebe2
movzx eax, byte [esi + edi]
movzx ecx, byte [esi + edi + 1]
movzx edx, byte [esi + edi + 2]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
push eax
call fcn.00409960
add edi, 2
jmp 0x44ec28
cmp ecx, 4
jl 0x44ec26
and al, 0xf8
cmp al, 0xf0
jne 0x44ec26
movzx eax, byte [esi + edi]
movzx ecx, byte [esi + edi + 1]
movzx edx, byte [esi + edi + 2]
and eax, 7
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + edi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
push eax
call fcn.00409960
add edi, 3
jmp 0x44ec28
xor eax, eax
test bl, bl
mov edx, 1
jns 0x44ed2f
mov ecx, dword [esp + 0x24]
cmp ebp, ecx
ja 0x44ec7b
mov dl, bl
and dl, 0xe0
cmp dl, 0xc0
jne 0x44ec7b
movzx ecx, byte [esi + 1]
mov edx, 2
add dword [esp + 0x18], edx
add dword [esp + 0x1c], edx
sub dword [esp + 0x10], edx
sub dword [esp + 0x14], edx
and ebx, 0x1f
and ecx, 0x3f
shl ebx, 6
add esi, edx
add ebp, edx
mov edx, 1
or ecx, ebx
sub edi, edx
jmp 0x44ed46
cmp dword [esp + 0x1c], ecx
ja 0x44ecc9
mov dl, bl
and dl, 0xf0
cmp dl, 0xe0
jne 0x44ecc9
movzx ecx, byte [esi + 1]
movzx edx, byte [ebp]
and ecx, 0x3f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
and edx, 0x3f
shl ecx, 6
or ecx, edx
mov edx, 3
add dword [esp + 0x18], edx
add dword [esp + 0x1c], edx
sub dword [esp + 0x10], edx
sub dword [esp + 0x14], edx
add esi, edx
add ebp, edx
sub edi, 2
mov edx, 1
jmp 0x44ed46
cmp dword [esp + 0x18], ecx
ja 0x44ed28
mov cl, bl
and cl, 0xf8
cmp cl, 0xf0
jne 0x44ed28
movzx ecx, byte [esi + 1]
movzx edx, byte [ebp]
add dword [esp + 0x18], 4
and ebx, 7
and ecx, 0x3f
shl ebx, 6
or ecx, ebx
and edx, 0x3f
shl ecx, 6
or ecx, edx
mov edx, dword [esp + 0x1c]
movzx ebx, byte [edx]
and ebx, 0x3f
shl ecx, 6
or ecx, ebx
mov ebx, 4
sub dword [esp + 0x10], ebx
sub dword [esp + 0x14], ebx
add edx, ebx
add esi, 4
add ebp, ebx
mov dword [esp + 0x1c], edx
sub edi, 3
lea edx, [ebx - 3]
jmp 0x44ed46
xor ecx, ecx
lea edx, [ecx + 1]
jmp 0x44ed32
movzx ecx, bl
add dword [esp + 0x18], edx
add dword [esp + 0x1c], edx
sub dword [esp + 0x10], edx
add esi, edx
add ebp, edx
sub dword [esp + 0x14], edx
cmp eax, ecx
jne 0x44ed63
mov eax, dword [esp + 0x10]
sub eax, edi
cmp eax, dword [esp + 0x14]
jge 0x44eb30
xor esi, esi
jmp 0x44ed7c
mov edx, 1
mov ecx, dword [esp + 0x20]
cmp ecx, dword [esp + 0x34]
je 0x44eac7
add dword [esp + 0x20], edx
jmp 0x44eb00
mov esi, edx
test byte [esp + 0x28], 0x10
je 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
lea ebx, [eax - 0x22]
test bl, 2
mov dword [esp + 0x2c], ebx
je 0x44ede6
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
je 0x44edd1
mov eax, dword [esp + 0x1ac]
push eax
push esi
call fcn.00424170
mov eax, dword [esi + 8]
mov edx, dword [esi]
jmp 0x44ee00
mov ecx, dword [esp + 0x1ac]
push ecx
push esi
call fcn.00424170
mov eax, dword [esi + 8]
mov edx, dword [esi]
jmp 0x44ee00
mov ecx, dword [esp + 0x1ac]
mov dl, byte [ecx + 4]
cmp dl, 0xff
lea eax, [ecx + 5]
jne 0x44edfd
mov edx, dword [ecx - 4]
jmp 0x44ee00
movzx edx, dl
test bl, 1
je 0x44ef26
mov ecx, dword [edi + 0x14]
test ecx, ecx
lea esi, [edi + 0x18]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x30], esi
je 0x44ef6d
mov edi, eax
mov ebp, edx
mov edx, dword [0x58b5d0]
mov dword [esp + 0x24], edi
lea ecx, [ecx]
mov eax, esi
mov esi, dword [esp + 0x28]
mov ecx, ebp
sub esi, ebp
lea ebx, [ebx]
test ecx, ecx
je 0x44ef30
movzx ebx, byte [edi]
mov bl, byte [ebx + edx]
cmp bl, byte [eax]
jne 0x44eeb7
sub ecx, 1
lea ebx, [ecx + esi]
add edi, 1
add eax, 1
test ebx, ebx
jne 0x44ee40
mov al, byte [eax - 1]
cmp al, 0x61
jb 0x44ee6d
cmp al, 0x7a
jbe 0x44ee89
cmp al, 0x41
jb 0x44ee75
cmp al, 0x5a
jbe 0x44ee89
cmp al, 0x30
jb 0x44ee7d
cmp al, 0x39
jbe 0x44ee89
cmp al, 0x5f
je 0x44ee89
test al, al
jns 0x44ef6d
test ecx, ecx
je 0x44ef6d
mov al, byte [edi]
cmp al, 0x61
jb 0x44ee9b
cmp al, 0x7a
jbe 0x44eeb7
cmp al, 0x41
jb 0x44eea3
cmp al, 0x5a
jbe 0x44eeb7
cmp al, 0x30
jb 0x44eeab
cmp al, 0x39
jbe 0x44eeb7
cmp al, 0x5f
je 0x44eeb7
test al, al
jns 0x44ef6d
mov esi, dword [esp + 0x30]
mov cl, byte [esi]
mov edi, dword [esp + 0x24]
add edi, 1
sub ebp, 1
cmp cl, 0x61
mov dword [esp + 0x24], edi
jb 0x44eed5
cmp cl, 0x7a
jbe 0x44eef6
cmp cl, 0x41
jb 0x44eedf
cmp cl, 0x5a
jbe 0x44eef6
cmp cl, 0x30
jb 0x44eee9
cmp cl, 0x39
jbe 0x44eef6
cmp cl, 0x5f
je 0x44eef6
test cl, cl
jns 0x44ee30
test ebp, ebp
je 0x44ee30
mov al, byte [edi - 1]
cmp al, 0x61
jb 0x44ef09
cmp al, 0x7a
jbe 0x44eec1
cmp al, 0x41
jb 0x44ef11
cmp al, 0x5a
jbe 0x44eec1
cmp al, 0x30
jb 0x44ef19
cmp al, 0x39
jbe 0x44eec1
cmp al, 0x5f
je 0x44eec1
test al, al
js 0x44eec1
jmp 0x44ee30
mov esi, dword [edi + 0x14]
cmp esi, edx
lea ebp, [edi + 0x18]
jle 0x44ef34
xor esi, esi
jmp 0x44ef72
sub eax, ebp
mov ecx, eax
mov edi, ecx
sub edi, esi
lea ebx, [esi + ebp]
mov esi, dword [0x58b5d0]
add edi, edx
mov eax, ebp
lea esp, [esp]
cmp eax, ebx
jae 0x44ef6d
movzx edx, byte [eax + ecx]
mov dl, byte [edx + esi]
cmp dl, byte [eax]
jne 0x44ef64
add eax, 1
jmp 0x44ef50
cmp ecx, edi
je 0x44ef30
add ecx, 1
jmp 0x44ef47
mov esi, 1
test byte [esp + 0x2c], 4
je 0x4513af
xor eax, eax
test esi, esi
sete al
pop edi
mov esi, eax
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
lea ebx, [eax - 0x2a]
test bl, 4
mov dword [esp + 0x24], ebx
je 0x44efda
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
je 0x44efc5
mov ecx, dword [esp + 0x1ac]
push ecx
push esi
call fcn.00424170
mov ecx, dword [esi + 8]
mov eax, dword [esi]
jmp 0x44eff4
mov edx, dword [esp + 0x1ac]
push edx
push esi
call fcn.00424170
mov ecx, dword [esi + 8]
mov eax, dword [esi]
jmp 0x44eff4
mov eax, dword [esp + 0x1ac]
mov dl, byte [eax + 4]
cmp dl, 0xff
lea ecx, [eax + 5]
jne 0x44eff1
mov eax, dword [eax - 4]
jmp 0x44eff4
movzx eax, dl
test bl, 1
je 0x44f058
test bl, 2
je 0x44f047
mov ebp, dword [edi + 0x14]
cmp eax, ebp
mov esi, eax
jl 0x44f009
mov esi, ebp
add edi, 0x18
test esi, esi
je 0x44f029
sub edi, ecx
movzx ebx, byte [ecx + edi]
movzx edx, byte [ecx]
sub edx, ebx
jne 0x44f036
add ecx, 1
sub esi, 1
jne 0x44f012
mov ebx, dword [esp + 0x24]
xor ecx, ecx
sub eax, ebp
test eax, eax
sete cl
mov esi, ecx
jmp 0x44f07c
mov ebx, dword [esp + 0x24]
xor ecx, ecx
mov eax, edx
test eax, eax
sete cl
mov esi, ecx
jmp 0x44f07c
mov edx, dword [edi + 0x14]
push edx
add edi, 0x18
push edi
push eax
push ecx
call fcn.00421d10
jmp 0x44f073
mov edx, dword [edi + 0x14]
push edx
add edi, 0x18
test bl, 2
push edi
push eax
push ecx
je 0x44f06e
call fcn.00413e80
jmp 0x44f073
call fcn.00421a70
mov esi, eax
neg esi
sbb esi, esi
add esi, 1
test bl, 8
je 0x4513af
xor eax, eax
test esi, esi
sete al
pop edi
mov esi, eax
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
add eax, 0xffffffc6
test al, 1
mov dword [esp + 0x28], eax
je 0x44f0e1
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
je 0x44f0cc
mov ecx, dword [esp + 0x1ac]
push ecx
push esi
call fcn.00424170
mov edx, dword [esi + 8]
mov ecx, dword [esi]
jmp 0x44f0fb
mov edx, dword [esp + 0x1ac]
push edx
push esi
call fcn.00424170
mov edx, dword [esi + 8]
mov ecx, dword [esi]
jmp 0x44f0fb
mov eax, dword [esp + 0x1ac]
mov cl, byte [eax + 4]
cmp cl, 0xff
lea edx, [eax + 5]
jne 0x44f0f8
mov ecx, dword [eax - 4]
jmp 0x44f0fb
movzx ecx, cl
test ecx, ecx
mov esi, dword [edi + 0x14]
lea eax, [edi + 0x18]
je 0x44f130
mov ebp, dword [0x58b5d0]
mov edi, edx
sub edi, eax
nop
test esi, esi
je 0x44f130
movzx edx, byte [eax + edi]
movzx edx, byte [edx + ebp]
movzx ebx, byte [eax]
sub edx, ebx
jne 0x44f15e
sub ecx, 1
add eax, 1
sub esi, 1
test ecx, ecx
jne 0x44f110
sub ecx, esi
xor eax, eax
test ecx, ecx
sete al
test byte [esp + 0x28], 2
mov esi, eax
je 0x4513af
xor ecx, ecx
test esi, esi
sete cl
pop edi
mov esi, ecx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
mov ecx, edx
jmp 0x44f132
lea ebx, [eax - 0x3e]
test bl, 8
je 0x44f1a5
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
je 0x44f190
mov edx, dword [esp + 0x1ac]
push edx
push esi
call fcn.00424170
mov ecx, dword [esi + 8]
mov eax, dword [esi]
jmp 0x44f1bf
mov eax, dword [esp + 0x1ac]
push eax
push esi
call fcn.00424170
mov ecx, dword [esi + 8]
mov eax, dword [esi]
jmp 0x44f1bf
mov eax, dword [esp + 0x1ac]
mov dl, byte [eax + 4]
cmp dl, 0xff
lea ecx, [eax + 5]
jne 0x44f1bc
mov eax, dword [eax - 4]
jmp 0x44f1bf
movzx eax, dl
mov edx, dword [edi + 0x14]
push edx
add edi, 0x18
test bl, 1
push edi
push eax
push ecx
je 0x44f1f9
test bl, 2
je 0x44f1e6
test bl, 4
je 0x44f1df
call fcn.0051c460
jmp 0x44f222
call fcn.0051c7a0
jmp 0x44f222
test bl, 4
je 0x44f1f2
call fcn.0051c5a0
jmp 0x44f222
call fcn.0051c6a0
jmp 0x44f222
test bl, 2
je 0x44f211
test bl, 4
je 0x44f20a
call fcn.0051d6a0
jmp 0x44f222
call fcn.0051d7e0
jmp 0x44f222
test bl, 4
je 0x44f21d
call fcn.0051d740
jmp 0x44f222
call fcn.0051d790
test bl, 0x10
mov esi, eax
je 0x4513af
xor eax, eax
test esi, esi
sete al
pop edi
mov esi, eax
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
lea ebx, [eax - 0x5e]
test bl, 2
je 0x44f286
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
je 0x44f271
mov ecx, dword [esp + 0x1ac]
push ecx
push esi
call fcn.00424170
mov ecx, dword [esi + 8]
mov eax, dword [esi]
jmp 0x44f2a0
mov edx, dword [esp + 0x1ac]
push edx
push esi
call fcn.00424170
mov ecx, dword [esi + 8]
mov eax, dword [esi]
jmp 0x44f2a0
mov eax, dword [esp + 0x1ac]
mov dl, byte [eax + 4]
cmp dl, 0xff
lea ecx, [eax + 5]
jne 0x44f29d
mov eax, dword [eax - 4]
jmp 0x44f2a0
movzx eax, dl
mov edx, dword [edi + 0x14]
push edx
add edi, 0x18
test bl, 1
push edi
push eax
push ecx
je 0x44f2b6
call fcn.0051c500
jmp 0x44f2bb
call fcn.0051d6f0
test bl, 4
mov esi, eax
je 0x4513af
xor eax, eax
test esi, esi
sete al
pop edi
mov esi, eax
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
lea ebx, [eax - 0x66]
test bl, 4
je 0x44f31f
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
je 0x44f30a
mov ecx, dword [esp + 0x1ac]
push ecx
push esi
call fcn.00424170
mov ecx, dword [esi + 8]
mov eax, dword [esi]
jmp 0x44f339
mov edx, dword [esp + 0x1ac]
push edx
push esi
call fcn.00424170
mov ecx, dword [esi + 8]
mov eax, dword [esi]
jmp 0x44f339
mov eax, dword [esp + 0x1ac]
mov dl, byte [eax + 4]
cmp dl, 0xff
lea ecx, [eax + 5]
jne 0x44f336
mov eax, dword [eax - 4]
jmp 0x44f339
movzx eax, dl
mov edx, dword [edi + 0x14]
push edx
add edi, 0x18
test bl, 1
push edi
push eax
push ecx
je 0x44f365
test bl, 2
je 0x44f359
call fcn.0051a650
mov esi, eax
jmp 0x44f07c
call fcn.0051b0c0
mov esi, eax
jmp 0x44f07c
test bl, 2
je 0x44f376
call fcn.0051a8e0
mov esi, eax
jmp 0x44f07c
call fcn.0051acd0
mov esi, eax
jmp 0x44f07c
lea ebx, [eax - 0x76]
test bl, 1
je 0x44f3c5
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
je 0x44f3b0
mov ecx, dword [esp + 0x1ac]
push ecx
push esi
call fcn.00424170
mov ecx, dword [esi + 8]
mov eax, dword [esi]
jmp 0x44f3df
mov edx, dword [esp + 0x1ac]
push edx
push esi
call fcn.00424170
mov ecx, dword [esi + 8]
mov eax, dword [esi]
jmp 0x44f3df
mov eax, dword [esp + 0x1ac]
mov dl, byte [eax + 4]
cmp dl, 0xff
lea ecx, [eax + 5]
jne 0x44f3dc
mov eax, dword [eax - 4]
jmp 0x44f3df
movzx eax, dl
mov edx, dword [edi + 0x14]
push edx
add edi, 0x18
push edi
push eax
push ecx
call fcn.0051a790
mov esi, eax
test bl, 2
jmp 0x44f07f
lea ebx, [eax - 0x8e]
test bl, 4
je 0x44f440
cmp dword [esp + 0x1a8], 0
mov ebp, dword [esp + 0x1b0]
je 0x44f42a
mov ecx, dword [esp + 0x1ac]
push ecx
push ebp
call fcn.00424170
mov esi, dword [ebp + 8]
mov eax, dword [ebp]
jmp 0x44f45a
mov edx, dword [esp + 0x1ac]
push edx
push ebp
call fcn.00424170
mov esi, dword [ebp + 8]
mov eax, dword [ebp]
jmp 0x44f45a
mov eax, dword [esp + 0x1ac]
mov cl, byte [eax + 4]
cmp cl, 0xff
lea esi, [eax + 5]
jne 0x44f457
mov eax, dword [eax - 4]
jmp 0x44f45a
movzx eax, cl
test bl, 1
je 0x44f4a6
test bl, 2
je 0x44f495
mov edx, dword [edi + 0x14]
cmp edx, eax
lea ecx, [edi + 0x18]
jle 0x44f472
xor esi, esi
jmp 0x44f4cd
sub eax, ecx
sub eax, edx
lea edi, [ecx + edx]
add eax, esi
cmp ecx, edi
je 0x44f48e
nop
mov dl, byte [eax + ecx]
cmp dl, byte [ecx]
jne 0x44f46e
add ecx, 1
cmp ecx, edi
jne 0x44f480
mov esi, 1
jmp 0x44f4cd
mov ecx, dword [edi + 0x14]
push ecx
add edi, 0x18
push edi
push eax
push esi
call fcn.004227e0
jmp 0x44f4cb
test bl, 2
je 0x44f4bc
mov edx, dword [edi + 0x14]
push edx
add edi, 0x18
push edi
push eax
push esi
call fcn.0041d8f0
jmp 0x44f4cb
mov ecx, dword [edi + 0x14]
push ecx
add edi, 0x18
push edi
push eax
push esi
call fcn.00422540
mov esi, eax
test bl, 8
je 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
lea ebx, [eax - 0x9e]
test bl, 1
je 0x44f534
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
je 0x44f51f
mov eax, dword [esp + 0x1ac]
push eax
push esi
call fcn.00424170
mov ebp, dword [esi + 8]
mov eax, dword [esi]
jmp 0x44f54e
mov ecx, dword [esp + 0x1ac]
push ecx
push esi
call fcn.00424170
mov ebp, dword [esi + 8]
mov eax, dword [esi]
jmp 0x44f54e
mov eax, dword [esp + 0x1ac]
mov cl, byte [eax + 4]
cmp cl, 0xff
lea ebp, [eax + 5]
jne 0x44f54b
mov eax, dword [eax - 4]
jmp 0x44f54e
movzx eax, cl
mov edx, dword [edi + 0x14]
cmp edx, eax
lea ecx, [edi + 0x18]
jg 0x44f58f
sub eax, ecx
sub eax, edx
lea esi, [ecx + edx]
add eax, ebp
cmp ecx, esi
je 0x44f582
mov edi, dword [0x58b5d0]
jmp 0x44f570
movzx edx, byte [eax + ecx]
mov dl, byte [edx + edi]
cmp dl, byte [ecx]
jne 0x44f58f
add ecx, 1
cmp ecx, esi
jne 0x44f570
mov esi, 1
test bl, 2
jmp 0x44f07f
xor esi, esi
test bl, 2
jmp 0x44f07f
lea ebx, [eax - 0xa2]
mov eax, dword [esp + 0x1ac]
mov cl, byte [eax + 4]
cmp cl, 0xff
lea edx, [eax + 5]
jne 0x44f5b6
mov eax, dword [eax - 4]
jmp 0x44f5b9
movzx eax, cl
lea esi, [edi + 0x18]
push esi
mov esi, dword [edi + 0x14]
push esi
mov ecx, ebx
push eax
and ecx, 3
push edx
mov edx, dword [ecx*4 + 0x57fd74]
call edx
mov esi, eax
test bl, 4
jmp 0x44f07f
lea ebx, [eax - 0x176]
mov eax, dword [esp + 0x1ac]
mov cl, byte [eax + 4]
cmp cl, 0xff
lea edx, [eax + 5]
jne 0x44f5f8
mov eax, dword [eax - 4]
jmp 0x44f5fb
movzx eax, cl
lea esi, [edi + 0x18]
push esi
mov esi, dword [edi + 0x14]
push esi
mov ecx, ebx
push eax
and ecx, 3
push edx
mov edx, dword [ecx*4 + 0x57fd84]
call edx
mov esi, eax
test bl, 4
jmp 0x44f07f
mov ecx, dword [esp + 0x1ac]
mov dl, byte [ecx + 4]
cmp dl, 0xff
lea eax, [ecx + 5]
jne 0x44f634
mov ebx, dword [ecx - 4]
jmp 0x44f637
movzx ebx, dl
lea ecx, [ebx + eax - 1]
mov eax, dword [edi + 0x14]
xor ebp, ebp
sub eax, 1
mov dword [esp + 0x18], ebx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x20], ebp
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
sub eax, ebp
cdq
sub eax, edx
sar eax, 1
add eax, ebp
mov ecx, dword [edi + eax*8 + 0x18]
cmp ebx, ecx
jl 0x44f66a
mov ebx, ecx
test ebx, ebx
mov esi, dword [esp + 0x24]
mov edx, dword [edi + eax*8 + 0x1c]
je 0x44f6db
mov ebp, dword [0x58b5d0]
mov ecx, esi
movzx ecx, byte [ecx]
movzx ecx, byte [ecx + ebp]
movzx ebp, byte [edx]
sub ecx, ebp
jne 0x44f6b0
lea esp, [esp]
sub esi, 1
sub ebx, 1
je 0x44f6d7
movzx ecx, byte [esi]
mov ebp, dword [0x58b5d0]
movzx ecx, byte [ecx + ebp]
movzx ebp, byte [edx - 1]
sub edx, 1
sub ecx, ebp
je 0x44f690
test ecx, ecx
jge 0x44f6c1
mov ebp, dword [esp + 0x20]
add eax, 0xffffffff
mov dword [esp + 0x1c], eax
jmp 0x44f6c8
lea ebp, [eax + 1]
mov dword [esp + 0x20], ebp
cmp ebp, dword [esp + 0x1c]
jg 0x44f712
mov ebx, dword [esp + 0x18]
jmp 0x44f653
mov ebp, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
sub edx, dword [edi + eax*8 + 0x18]
test edx, edx
jle 0x44f6f5
cmp byte [esi], 0x2e
je 0x44f70b
lea ebp, [eax + 1]
mov dword [esp + 0x20], ebp
jmp 0x44f6fc
add eax, 0xffffffff
mov dword [esp + 0x1c], eax
cmp ebp, dword [esp + 0x1c]
jg 0x44f712
mov ebx, dword [esp + 0x18]
jmp 0x44f653
mov esi, 1
jmp 0x44f714
xor esi, esi
cmp dword [esp + 0x14], 0xab
jne 0x4513af
jmp 0x44f085
mov eax, dword [esp + 0x1ac]
mov dl, byte [eax + 4]
cmp dl, 0xff
lea ecx, [eax + 5]
jne 0x44f73e
mov eax, dword [eax - 4]
jmp 0x44f741
movzx eax, dl
add ecx, eax
test eax, eax
mov edx, eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], edx
je 0x44f771
sub ecx, 1
cmp byte [ecx], 0x2e
je 0x44f764
sub edx, 1
jne 0x44f751
mov dword [esp + 0x20], edx
jmp 0x44f76d
add ecx, 1
sub eax, edx
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], ecx
mov eax, dword [edi + 0x14]
xor ebp, ebp
sub eax, 1
mov dword [esp + 0x10], ebp
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0x20]
sub eax, ebp
cdq
sub eax, edx
sar eax, 1
add eax, ebp
mov ebx, dword [edi + eax*8 + 0x1c]
mov edx, dword [edi + eax*8 + 0x18]
sub ebx, ecx
test esi, esi
mov dword [esp + 0x24], edx
je 0x44f7e5
test edx, edx
je 0x44f7e5
movzx edx, byte [ecx]
mov ebp, dword [0x58b5d0]
movzx edx, byte [edx + ebp]
movzx ebp, byte [ecx + ebx]
sub edx, ebp
jne 0x44f7d4
mov edx, dword [esp + 0x24]
mov ebp, dword [esp + 0x10]
sub edx, 1
add ecx, 1
sub esi, 1
jmp 0x44f7a0
test edx, edx
jge 0x44f7f6
mov ebp, dword [esp + 0x10]
add eax, 0xffffffff
mov dword [esp + 0x18], eax
jmp 0x44f7fd
sub esi, edx
je 0x44f80b
test esi, esi
jge 0x44f7f6
add eax, 0xffffffff
mov dword [esp + 0x18], eax
jmp 0x44f7fd
lea ebp, [eax + 1]
mov dword [esp + 0x10], ebp
cmp ebp, dword [esp + 0x18]
jle 0x44f781
xor esi, esi
jmp 0x44f810
mov esi, 1
cmp dword [esp + 0x14], 0x17f
jne 0x4513af
jmp 0x44f085
lea ebx, [eax - 0x7a]
test bl, 4
je 0x44f866
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
je 0x44f851
mov ecx, dword [esp + 0x1ac]
push ecx
push esi
call fcn.00424170
mov ecx, dword [esi + 8]
mov eax, dword [esi]
jmp 0x44f880
mov edx, dword [esp + 0x1ac]
push edx
push esi
call fcn.00424170
mov ecx, dword [esi + 8]
mov eax, dword [esi]
jmp 0x44f880
mov eax, dword [esp + 0x1ac]
mov dl, byte [eax + 4]
cmp dl, 0xff
lea ecx, [eax + 5]
jne 0x44f87d
mov eax, dword [eax - 4]
jmp 0x44f880
movzx eax, dl
mov esi, dword [edi + 0x14]
push esi
add edi, 0x18
push edi
mov edx, ebx
push eax
and edx, 3
mov eax, dword [edx*4 + 0x57fd94]
push ecx
call eax
test bl, 8
mov esi, eax
je 0x4513af
xor ecx, ecx
test esi, esi
sete cl
pop edi
mov esi, ecx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
lea ebx, [eax - 0x128]
mov eax, 0x57fda4
jne 0x44f8d5
mov eax, 0x57fdb4
mov ecx, dword [edi + 0x14]
push ecx
mov ecx, dword [esp + 0x1b0]
mov edx, ebx
add edi, 0x18
and edx, 3
mov edx, dword [eax + edx*4]
push edi
push ecx
call edx
mov esi, eax
test bl, 4
jmp 0x44f07f
cmp dword [esp + 0x1a8], 0
mov eax, fcn.0042e0f0
jne 0x44f90d
mov eax, fcn.00424340
mov ecx, dword [edi + 0x14]
push ecx
mov ecx, dword [esp + 0x1b0]
lea edx, [edi + 0x18]
push edx
push ecx
call eax
cmp dword [edi + 0xc], 0x131
mov esi, eax
jne 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
lea ebx, [eax - 0x132]
mov eax, 0x57fdc4
jne 0x44f960
mov eax, 0x57fdd4
mov edx, dword [edi + 0x14]
push edx
mov edx, dword [esp + 0x1b0]
mov ecx, ebx
add edi, 0x18
and ecx, 3
mov eax, dword [eax + ecx*4]
push edi
push edx
call eax
test bl, 4
mov esi, eax
je 0x4513af
xor ecx, ecx
test esi, esi
sete cl
pop edi
mov esi, ecx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
mov eax, fcn.00425740
jne 0x44f9b1
mov eax, fcn.00425740
mov edx, dword [edi + 0x14]
push edx
mov edx, dword [esp + 0x1b0]
lea ecx, [edi + 0x18]
push ecx
push edx
call eax
cmp dword [edi + 0xc], 0x13b
mov esi, eax
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1a8], 0
lea ebx, [eax - 0x13c]
mov eax, 0x57fde4
jne 0x44f9f1
mov eax, 0x57fdf4
mov edx, dword [edi + 0x14]
push edx
mov edx, dword [esp + 0x1b0]
mov ecx, ebx
add edi, 0x18
and ecx, 3
mov eax, dword [eax + ecx*4]
push edi
push edx
call eax
test bl, 4
mov esi, eax
je 0x4513af
xor ecx, ecx
test esi, esi
sete cl
pop edi
mov esi, ecx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
mov eax, fcn.0042f5f0
jne 0x44fa42
mov eax, fcn.0042f5f0
mov edx, dword [edi + 0x14]
push edx
mov edx, dword [esp + 0x1b0]
lea ecx, [edi + 0x18]
push ecx
push edx
call eax
cmp dword [edi + 0xc], 0x145
mov esi, eax
jne 0x4513af
jmp 0x44f085
lea ebx, [eax - 0x8a]
test bl, 1
je 0x44faae
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
je 0x44fa99
mov ecx, dword [esp + 0x1ac]
push ecx
push esi
call fcn.00424170
mov ecx, dword [esi + 8]
mov edx, dword [esi]
jmp 0x44fac8
mov edx, dword [esp + 0x1ac]
push edx
push esi
call fcn.00424170
mov ecx, dword [esi + 8]
mov edx, dword [esi]
jmp 0x44fac8
mov eax, dword [esp + 0x1ac]
mov dl, byte [eax + 4]
cmp dl, 0xff
lea ecx, [eax + 5]
jne 0x44fac5
mov edx, dword [eax - 4]
jmp 0x44fac8
movzx edx, dl
mov esi, dword [edi + 0x14]
cmp esi, edx
lea eax, [edi + 0x18]
jg 0x44fafc
lea edx, [eax + esi]
sub ecx, eax
cmp eax, edx
mov esi, ecx
je 0x44faf5
mov edi, dword [0x58b5d0]
movzx ecx, byte [esi + eax]
mov cl, byte [ecx + edi]
cmp cl, byte [eax]
jne 0x44fafc
add eax, 1
cmp eax, edx
jne 0x44fae3
mov esi, 1
jmp 0x44fafe
xor esi, esi
test bl, 2
je 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
je 0x44fb3b
mov ecx, dword [esp + 0x1ac]
xor eax, eax
cmp dword [ecx], eax
sete al
mov esi, eax
jmp 0x44fb4b
mov eax, dword [esp + 0x1ac]
xor edx, edx
cmp dword [eax], edx
sete dl
mov esi, edx
cmp dword [esp + 0x14], 0xad
jne 0x4513af
xor ecx, ecx
test esi, esi
sete cl
pop edi
mov esi, ecx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
mov edx, dword [esp + 0x1ac]
mov eax, dword [esp + 0x1a0]
mov ecx, dword [eax]
push edx
push ecx
je 0x44fb94
call fcn.0042f780
jmp 0x44fb99
call fcn.004268e0
cmp dword [edi + 0xc], 0xaf
mov esi, eax
jne 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
mov eax, dword [esp + 0x1ac]
mov ecx, dword [esp + 0x1a0]
mov edx, dword [ecx]
push eax
push edx
je 0x44fbe3
call fcn.0042f780
jmp 0x44fbe8
call fcn.00426680
cmp dword [edi + 0xc], 0xb1
mov esi, eax
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1a8], 0
mov ecx, dword [esp + 0x1ac]
mov edx, dword [esp + 0x1a0]
mov eax, dword [edx]
push ecx
push eax
je 0x44fc1f
call fcn.0042f980
jmp 0x44fc24
call fcn.00426ae0
cmp dword [edi + 0xc], 0xb3
mov esi, eax
jne 0x4513af
xor ecx, ecx
test esi, esi
sete cl
pop edi
mov esi, ecx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
mov edx, dword [esp + 0x1ac]
mov eax, dword [esp + 0x1a0]
mov ecx, dword [eax]
push edx
push ecx
je 0x44fc6e
call fcn.0042fbe0
jmp 0x44fc73
call fcn.00426d40
cmp dword [edi + 0xc], 0xb5
mov esi, eax
jne 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
mov eax, dword [esp + 0x1ac]
mov ecx, dword [esp + 0x1a0]
mov edx, dword [ecx]
push eax
push edx
je 0x44fcbd
call fcn.0042fe60
jmp 0x44fcc2
call fcn.00426fc0
cmp dword [edi + 0xc], 0xb7
mov esi, eax
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1a8], 0
mov ecx, dword [esp + 0x1ac]
mov edx, dword [esp + 0x1a0]
mov eax, dword [edx]
push ecx
push eax
je 0x44fcf9
call fcn.004300e0
jmp 0x44fcfe
call fcn.004272a0
cmp dword [edi + 0xc], 0xb9
mov esi, eax
jne 0x4513af
xor ecx, ecx
test esi, esi
sete cl
pop edi
mov esi, ecx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
mov edx, dword [esp + 0x1ac]
mov eax, dword [esp + 0x1a0]
mov ecx, dword [eax]
push edx
push ecx
je 0x44fd48
call fcn.004303c0
jmp 0x44fd4d
call fcn.00427520
cmp dword [edi + 0xc], 0xbb
mov esi, eax
jne 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
je 0x44fdae
mov ecx, dword [esp + 0x1ac]
mov eax, dword [ecx]
test eax, eax
je 0x44fd98
jmp 0x44fd90
mov ecx, eax
mov eax, dword [eax]
test eax, eax
jne 0x44fd90
cmp byte [ecx + 4], 0xff
jne 0x44fda6
mov ecx, dword [ecx - 8]
mov eax, dword [ecx + 4]
jmp 0x44fdea
mov ecx, dword [ecx - 4]
mov eax, dword [ecx + 4]
jmp 0x44fdea
mov eax, dword [esp + 0x1ac]
mov ecx, dword [eax]
test ecx, ecx
jne 0x44fdcb
cmp byte [eax + 4], 0xff
jne 0x44fdc6
mov eax, dword [eax - 8]
jmp 0x44fde7
mov eax, dword [eax - 4]
jmp 0x44fde7
mov eax, dword [ecx]
test eax, eax
je 0x44fdd9
mov ecx, eax
mov eax, dword [eax]
test eax, eax
jne 0x44fdd1
cmp byte [ecx + 4], 0xff
jne 0x44fde4
mov eax, dword [ecx - 8]
jmp 0x44fde7
mov eax, dword [ecx - 4]
mov eax, dword [eax + 4]
mov edi, dword [edi + 0x14]
cmp eax, edi
jb 0x44fdfa
ja 0x44fdfa
mov esi, 1
jmp 0x44fdfc
xor esi, esi
cmp dword [esp + 0x14], 0xbd
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1a8], 0
lea ebx, [eax - 0xbe]
je 0x44fe77
test bl, 1
je 0x44fecb
mov esi, dword [esp + 0x1ac]
mov al, byte [esi + 4]
cmp al, 0xff
jne 0x44fe3b
mov eax, dword [esi - 4]
jmp 0x44fe3e
movzx eax, al
push eax
lea ecx, [esi + 5]
push ecx
call fcn.005222a0
mov esi, dword [esi]
test esi, esi
mov ebp, eax
je 0x44fe73
mov al, byte [esi + 4]
cmp al, 0xff
jne 0x44fe5c
mov eax, dword [esi - 4]
jmp 0x44fe5f
movzx eax, al
push eax
lea edx, [esi + 5]
push edx
call fcn.005222a0
mov esi, dword [esi]
test esi, esi
lea ebp, [eax + ebp + 1]
jne 0x44fe50
mov eax, ebp
jmp 0x44feeb
test bl, 1
je 0x44fecb
mov esi, dword [esp + 0x1ac]
mov al, byte [esi + 4]
cmp al, 0xff
jne 0x44fe8f
mov eax, dword [esi - 4]
jmp 0x44fe92
movzx eax, al
push eax
lea eax, [esi + 5]
push eax
call fcn.005222a0
mov esi, dword [esi]
test esi, esi
mov ebp, eax
je 0x44fec7
mov al, byte [esi + 4]
cmp al, 0xff
jne 0x44feb0
mov eax, dword [esi - 4]
jmp 0x44feb3
movzx eax, al
push eax
lea ecx, [esi + 5]
push ecx
call fcn.005222a0
mov esi, dword [esi]
test esi, esi
lea ebp, [eax + ebp + 1]
jne 0x44fea4
mov eax, ebp
jmp 0x44feeb
mov ecx, dword [esp + 0x1ac]
mov al, byte [ecx + 4]
cmp al, 0xff
jne 0x44fede
mov eax, dword [ecx - 4]
jmp 0x44fee1
movzx eax, al
push eax
add ecx, 5
push ecx
call fcn.005222a0
cmp eax, dword [edi + 0x14]
jl 0x44fafc
cmp eax, dword [edi + 0x18]
jg 0x44fafc
mov esi, 1
jmp 0x44fafe
mov esi, dword [esp + 0x1b4]
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
xor ecx, ecx
cmp dword [esp + 0x1a8], ecx
je 0x44ff40
mov eax, dword [esp + 0x1ac]
mov eax, dword [eax]
test eax, eax
je 0x44ff59
mov eax, dword [eax]
add ecx, 1
test eax, eax
jne 0x44ff35
jmp 0x44ff59
mov edx, dword [esp + 0x1ac]
mov eax, dword [edx]
test eax, eax
je 0x44ff59
lea ecx, [ecx]
mov eax, dword [eax]
add ecx, 1
test eax, eax
jne 0x44ff50
cmp ecx, dword [edi + 0x14]
jl 0x44ff6a
cmp ecx, dword [edi + 0x18]
jg 0x44ff6a
mov esi, 1
jmp 0x44ff6c
xor esi, esi
cmp dword [esp + 0x14], 0xc5
jne 0x4513af
jmp 0x44f085
lea ecx, [esp + 0x3c]
push ecx
call fcn.0051ec40
cmp dword [esp + 0x1a8], 0
je 0x44ffa7
mov edx, dword [esp + 0x1ac]
push edx
lea eax, [esp + 0x40]
push eax
call fcn.00423cf0
jmp 0x44ffb9
mov ecx, dword [esp + 0x1ac]
push ecx
lea edx, [esp + 0x40]
push edx
call fcn.00423cf0
mov eax, dword [edi + 0x18]
mov edx, dword [esp + 0x3c]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [edi + 0x1c]
push ecx
mov ecx, dword [edi + 0x14]
push edx
push eax
call ecx
cmp dword [edi + 0xc], 0x119
mov esi, eax
jne 0x44ffe4
xor edx, edx
test esi, esi
sete dl
mov esi, edx
lea eax, [esp + 0x3c]
push eax
call fcn.00522920
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
lea ecx, [esp + 0x3c]
push ecx
call fcn.0051ec40
cmp dword [esp + 0x1a8], 0
je 0x450025
mov edx, dword [esp + 0x1ac]
push edx
lea eax, [esp + 0x40]
push eax
call fcn.00423cf0
jmp 0x450037
mov ecx, dword [esp + 0x1ac]
push ecx
lea edx, [esp + 0x40]
push edx
call fcn.00423cf0
mov eax, dword [edi + 0x18]
mov edx, dword [esp + 0x3c]
push eax
mov eax, dword [esp + 0x48]
lea ecx, [edi + 0x20]
push ecx
mov ecx, dword [edi + 0x14]
push edx
push eax
call ecx
cmp dword [edi + 0xc], 0x11b
jmp 0x44ffd7
lea ecx, [esp + 0x3c]
push ecx
call fcn.0051ec40
cmp dword [esp + 0x1a8], 0
je 0x45007f
mov edx, dword [esp + 0x1ac]
push edx
lea eax, [esp + 0x40]
push eax
call fcn.00423cf0
jmp 0x450091
mov ecx, dword [esp + 0x1ac]
push ecx
lea edx, [esp + 0x40]
push edx
call fcn.00423cf0
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x14]
push eax
mov eax, dword [esp + 0x40]
lea edx, [edi + ecx*4 + 0x20]
mov ecx, dword [esp + 0x48]
push edx
mov edx, dword [edi + 0x18]
push eax
push ecx
call edx
cmp dword [edi + 0xc], 0x11d
mov esi, eax
jne 0x4500c0
xor eax, eax
test esi, esi
sete al
mov esi, eax
lea ecx, [esp + 0x3c]
push ecx
call fcn.00522920
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
mov edx, dword [esp + 0x1a0]
mov ecx, dword [esp + 0x1ac]
mov eax, dword [edx]
push ecx
push eax
call fcn.00453ed0
test eax, eax
je 0x4500fb
mov edx, dword [eax]
mov eax, dword [edx + 8]
jmp 0x4500fd
xor eax, eax
cmp eax, dword [edi + 0x14]
jb 0x45010e
cmp eax, dword [edi + 0x18]
ja 0x45010e
mov esi, 1
jmp 0x450110
xor esi, esi
cmp dword [edi + 0xc], 0x149
jne 0x4513af
jmp 0x44f085
mov ecx, dword [esp + 0x1a0]
mov edx, dword [esp + 0x1ac]
mov eax, dword [ecx]
push edx
push eax
call fcn.00453ed0
test eax, eax
je 0x450146
mov eax, dword [eax]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
jmp 0x45014a
xor ecx, ecx
xor eax, eax
cmp eax, dword [edi + 0x1c]
jb 0x450169
ja 0x450156
cmp ecx, dword [edi + 0x18]
jb 0x450169
cmp eax, dword [edi + 0x24]
ja 0x450169
jb 0x450162
cmp ecx, dword [edi + 0x20]
ja 0x450169
mov esi, 1
jmp 0x45016b
xor esi, esi
cmp dword [edi + 0xc], 0x14b
jne 0x4513af
jmp 0x44f085
mov eax, dword [esp + 0x1a0]
mov ecx, dword [eax + 0x44]
add ecx, dword [eax + 0x2c]
cmp ecx, dword [edi + 0x14]
sbb esi, esi
neg esi
cmp dword [esp + 0x14], 0x14f
jne 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
push edi
je 0x4501d1
mov eax, dword [esp + 0x1b0]
push eax
call fcn.00431140
jmp 0x4501de
mov ecx, dword [esp + 0x1b0]
push ecx
call fcn.00428640
cmp dword [edi + 0xc], 0x151
mov esi, eax
jne 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
mov eax, dword [esp + 0x1ac]
mov ecx, dword [esp + 0x1a0]
push eax
push ecx
call fcn.00423c90
cmp edx, dword [edi + 0x1c]
jb 0x450239
ja 0x450226
cmp eax, dword [edi + 0x18]
jb 0x450239
cmp edx, dword [edi + 0x24]
ja 0x450239
jb 0x450232
cmp eax, dword [edi + 0x20]
ja 0x450239
mov esi, 1
jmp 0x45023b
xor esi, esi
cmp dword [edi + 0xc], 0xc7
jne 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
mov eax, dword [esp + 0x1ac]
mov cl, byte [eax + 4]
cmp cl, 0xff
jne 0x450278
mov ecx, dword [eax - 4]
lea eax, [ecx + eax + 5]
jmp 0x45027f
movzx edx, cl
lea eax, [edx + eax + 5]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
cmp eax, dword [edi + 0x1c]
jb 0x4502a3
ja 0x450290
cmp ecx, dword [edi + 0x18]
jb 0x4502a3
cmp eax, dword [edi + 0x24]
ja 0x4502a3
jb 0x45029c
cmp ecx, dword [edi + 0x20]
ja 0x4502a3
mov esi, 1
jmp 0x4502a5
xor esi, esi
cmp dword [esp + 0x14], 0xc9
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1a8], 0
mov eax, dword [esp + 0x1ac]
mov cl, byte [eax + 4]
je 0x450301
cmp cl, 0xff
jne 0x4502e9
mov ecx, dword [eax - 4]
lea eax, [ecx + eax + 5]
mov ecx, dword [esp + 0x1a0]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x364]
jmp 0x450325
movzx edx, cl
mov ecx, dword [esp + 0x1a0]
lea eax, [edx + eax + 5]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x364]
jmp 0x450325
cmp cl, 0xff
jne 0x45030f
mov ecx, dword [eax - 4]
lea eax, [ecx + eax + 5]
jmp 0x450316
movzx edx, cl
lea eax, [edx + eax + 5]
mov ecx, dword [esp + 0x1a0]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x360]
mov edx, dword [eax + ecx]
mov eax, dword [eax + ecx + 4]
cmp eax, dword [edi + 0x1c]
jb 0x45034b
ja 0x450338
cmp edx, dword [edi + 0x18]
jb 0x45034b
cmp eax, dword [edi + 0x24]
ja 0x45034b
jb 0x450344
cmp edx, dword [edi + 0x20]
ja 0x45034b
mov esi, 1
jmp 0x45034d
xor esi, esi
cmp dword [esp + 0x14], 0xcb
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1a8], 0
mov eax, dword [esp + 0x1ac]
mov cl, byte [eax + 4]
je 0x4503a9
cmp cl, 0xff
jne 0x450391
mov ecx, dword [eax - 4]
lea eax, [ecx + eax + 5]
mov ecx, dword [esp + 0x1a0]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x35c]
jmp 0x4503cd
movzx edx, cl
mov ecx, dword [esp + 0x1a0]
lea eax, [edx + eax + 5]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x35c]
jmp 0x4503cd
cmp cl, 0xff
jne 0x4503b7
mov ecx, dword [eax - 4]
lea eax, [ecx + eax + 5]
jmp 0x4503be
movzx edx, cl
lea eax, [edx + eax + 5]
mov ecx, dword [esp + 0x1a0]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x358]
mov edx, dword [eax + ecx]
mov eax, dword [eax + ecx + 4]
cmp eax, dword [edi + 0x1c]
jb 0x4503f3
ja 0x4503e0
cmp edx, dword [edi + 0x18]
jb 0x4503f3
cmp eax, dword [edi + 0x24]
ja 0x4503f3
jb 0x4503ec
cmp edx, dword [edi + 0x20]
ja 0x4503f3
mov esi, 1
jmp 0x4503f5
xor esi, esi
cmp dword [esp + 0x14], 0xcd
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1a8], 0
mov eax, dword [esp + 0x1ac]
mov cl, byte [eax + 4]
je 0x450451
cmp cl, 0xff
jne 0x450439
mov ecx, dword [eax - 4]
lea eax, [ecx + eax + 5]
mov ecx, dword [esp + 0x1a0]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x36c]
jmp 0x450475
movzx edx, cl
mov ecx, dword [esp + 0x1a0]
lea eax, [edx + eax + 5]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x36c]
jmp 0x450475
cmp cl, 0xff
jne 0x45045f
mov ecx, dword [eax - 4]
lea eax, [ecx + eax + 5]
jmp 0x450466
movzx edx, cl
lea eax, [edx + eax + 5]
mov ecx, dword [esp + 0x1a0]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x368]
mov edx, dword [eax + ecx]
mov eax, dword [eax + ecx + 4]
cmp eax, dword [edi + 0x1c]
jb 0x45049b
ja 0x450488
cmp edx, dword [edi + 0x18]
jb 0x45049b
cmp eax, dword [edi + 0x24]
ja 0x45049b
jb 0x450494
cmp edx, dword [edi + 0x20]
ja 0x45049b
mov esi, 1
jmp 0x45049d
xor esi, esi
cmp dword [esp + 0x14], 0xcf
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1a8], 0
mov eax, dword [esp + 0x1ac]
mov cl, byte [eax + 4]
je 0x4504ff
cmp cl, 0xff
jne 0x4504e4
mov ecx, dword [eax - 4]
lea eax, [ecx + eax + 5]
mov ecx, dword [esp + 0x1a0]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x374]
mov eax, dword [eax + ecx]
jmp 0x450526
movzx edx, cl
mov ecx, dword [esp + 0x1a0]
lea eax, [edx + eax + 5]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x374]
mov eax, dword [eax + ecx]
jmp 0x450526
cmp cl, 0xff
jne 0x45050d
mov edx, dword [eax - 4]
lea eax, [edx + eax + 5]
jmp 0x450514
movzx ecx, cl
lea eax, [ecx + eax + 5]
mov edx, dword [esp + 0x1a0]
mov ecx, dword [edx]
mov edx, dword [ecx + 0x370]
mov eax, dword [eax + edx]
mov edi, dword [edi + 0x14]
mov ecx, edi
xor edx, edx
and ecx, eax
cmp ecx, edi
sete dl
cmp dword [esp + 0x14], 0xd1
mov esi, edx
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1a8], 0
je 0x45056a
mov ecx, dword [esp + 0x1ac]
mov edx, dword [esp + 0x1a0]
push ecx
push edx
call fcn.0042d2f0
jmp 0x45057f
mov eax, dword [esp + 0x1ac]
mov ecx, dword [esp + 0x1a0]
push eax
push ecx
call fcn.00423d10
mov ecx, dword [edi + 0x14]
mov edx, ecx
and edx, eax
xor eax, eax
cmp edx, ecx
sete al
cmp dword [edi + 0xc], 0xd3
mov esi, eax
jne 0x4513af
xor ecx, ecx
test esi, esi
sete cl
pop edi
mov esi, ecx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
je 0x4505d5
mov edx, dword [esp + 0x1ac]
mov eax, dword [esp + 0x1a0]
push edx
push eax
call fcn.0042d3b0
jmp 0x4505ea
mov ecx, dword [esp + 0x1ac]
mov edx, dword [esp + 0x1a0]
push ecx
push edx
call fcn.00423dd0
cmp edx, dword [edi + 0x1c]
jb 0x450609
ja 0x4505f6
cmp eax, dword [edi + 0x18]
jb 0x450609
cmp edx, dword [edi + 0x24]
ja 0x450609
jb 0x450602
cmp eax, dword [edi + 0x20]
ja 0x450609
mov esi, 1
jmp 0x45060b
xor esi, esi
cmp dword [edi + 0xc], 0xd5
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1a8], 0
mov ebp, dword [esp + 0x1ac]
push ebp
je 0x450650
mov ecx, dword [esp + 0x1a4]
push ecx
call fcn.0042d3b0
mov ebx, edx
mov edx, dword [esp + 0x1a0]
push ebp
push edx
mov esi, eax
call fcn.0042d440
jmp 0x45066f
mov eax, dword [esp + 0x1a4]
push eax
call fcn.00423dd0
mov ecx, dword [esp + 0x1a0]
push ebp
push ecx
mov esi, eax
mov ebx, edx
call fcn.00423e30
cmp esi, eax
jne 0x45067e
cmp ebx, edx
jne 0x45067e
mov esi, 1
jmp 0x450680
xor esi, esi
cmp dword [edi + 0xc], 0xd7
jne 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
mov ebp, dword [esp + 0x1ac]
push ebp
je 0x4506d8
mov eax, dword [esp + 0x1a4]
push eax
call fcn.0042d3b0
mov ecx, dword [esp + 0x1a0]
push ebp
push ecx
mov ebx, eax
mov esi, edx
call fcn.0042d440
jmp 0x4506f7
mov edx, dword [esp + 0x1a4]
push edx
call fcn.00423dd0
mov ebx, eax
mov eax, dword [esp + 0x1a0]
push ebp
push eax
mov esi, edx
call fcn.00423e30
cmp esi, edx
jb 0x450708
ja 0x450701
cmp ebx, eax
jb 0x450708
mov esi, 1
jmp 0x45070a
xor esi, esi
cmp dword [edi + 0xc], 0xd9
jne 0x4513af
xor ecx, ecx
test esi, esi
sete cl
pop edi
mov esi, ecx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
mov ebp, dword [esp + 0x1ac]
push ebp
je 0x450762
mov edx, dword [esp + 0x1a4]
push edx
call fcn.0042d3b0
mov ebx, eax
mov eax, dword [esp + 0x1a0]
push ebp
push eax
mov esi, edx
call fcn.0042d440
jmp 0x450781
mov ecx, dword [esp + 0x1a4]
push ecx
call fcn.00423dd0
mov esi, edx
mov edx, dword [esp + 0x1a0]
push ebp
push edx
mov ebx, eax
call fcn.00423e30
cmp esi, edx
jb 0x450792
ja 0x45078b
cmp ebx, eax
jbe 0x450792
mov esi, 1
jmp 0x450794
xor esi, esi
cmp dword [edi + 0xc], 0xdb
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1a8], 0
je 0x4507c7
mov ecx, dword [esp + 0x1ac]
mov edx, dword [esp + 0x1a0]
push ecx
push edx
call fcn.0042d350
jmp 0x4507dc
mov eax, dword [esp + 0x1ac]
mov ecx, dword [esp + 0x1a0]
push eax
push ecx
call fcn.00423d70
cmp edx, dword [edi + 0x1c]
jb 0x4507fb
ja 0x4507e8
cmp eax, dword [edi + 0x18]
jb 0x4507fb
cmp edx, dword [edi + 0x24]
ja 0x4507fb
jb 0x4507f4
cmp eax, dword [edi + 0x20]
ja 0x4507fb
mov esi, 1
jmp 0x4507fd
xor esi, esi
cmp dword [edi + 0xc], 0x14d
jne 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
je 0x450843
mov eax, dword [esp + 0x1ac]
mov ecx, dword [esp + 0x1a0]
push eax
push ecx
call fcn.0042d410
jmp 0x450858
mov edx, dword [esp + 0x1ac]
mov eax, dword [esp + 0x1a0]
push edx
push eax
call fcn.0042d410
cmp edx, dword [edi + 0x1c]
jb 0x450877
ja 0x450864
cmp eax, dword [edi + 0x18]
jb 0x450877
cmp edx, dword [edi + 0x24]
ja 0x450877
jb 0x450870
cmp eax, dword [edi + 0x20]
ja 0x450877
mov esi, 1
jmp 0x450879
xor esi, esi
cmp dword [edi + 0xc], 0x147
jne 0x4513af
xor ecx, ecx
test esi, esi
sete cl
pop edi
mov esi, ecx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
je 0x4508bf
mov edx, dword [esp + 0x1ac]
mov eax, dword [esp + 0x1a0]
push edx
push eax
call fcn.0042d440
jmp 0x4508d4
mov ecx, dword [esp + 0x1ac]
mov edx, dword [esp + 0x1a0]
push ecx
push edx
call fcn.00423e30
cmp edx, dword [edi + 0x1c]
jb 0x4508f3
ja 0x4508e0
cmp eax, dword [edi + 0x18]
jb 0x4508f3
cmp edx, dword [edi + 0x24]
ja 0x4508f3
jb 0x4508ec
cmp eax, dword [edi + 0x20]
ja 0x4508f3
mov esi, 1
jmp 0x4508f5
xor esi, esi
cmp dword [edi + 0xc], 0xdd
jne 0x4513af
jmp 0x44f085
mov ecx, dword [esp + 0x1ac]
mov edx, dword [esp + 0x1a0]
push ecx
push edx
call fcn.00423e90
mov esi, eax
mov eax, dword [edi + 0x20]
push eax
lea ecx, [edi + 0x24]
push ecx
push esi
call fcn.00403620
mov edx, dword [edi + 0x14]
push eax
push esi
call edx
cmp dword [edi + 0xc], 0xdf
mov esi, eax
jne 0x4513af
jmp 0x44f085
mov esi, 1
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
mov ecx, dword [esp + 0x1ac]
mov edx, dword [esp + 0x1a0]
mov eax, dword [edx]
push ecx
push eax
call fcn.00428380
mov ecx, dword [edi + 0x20]
push ecx
lea edx, [edi + 0x24]
mov esi, eax
push edx
push esi
call fcn.00403620
push eax
mov eax, dword [edi + 0x14]
push esi
call eax
cmp dword [edi + 0xc], 0xe1
mov esi, eax
jne 0x4513af
xor ecx, ecx
test esi, esi
sete cl
pop edi
mov esi, ecx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
lea ebx, [eax - 0xe2]
test bl, 1
je 0x4509ec
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
je 0x4509dc
mov edx, dword [esp + 0x1ac]
push edx
push esi
call fcn.004240c0
jmp 0x450a14
mov eax, dword [esp + 0x1ac]
push eax
push esi
call fcn.004240c0
jmp 0x450a14
mov ecx, dword [esp + 0x1ac]
mov al, byte [ecx + 4]
cmp al, 0xff
jne 0x4509ff
mov eax, dword [ecx - 4]
jmp 0x450a02
movzx eax, al
mov esi, dword [esp + 0x1b0]
push eax
add ecx, 5
push ecx
push esi
call fcn.0051f540
mov eax, dword [esi + 8]
mov ecx, dword [esi]
push 0x80
lea edx, [esp + 0x150]
push edx
push 0xa
push eax
add edi, 0x14
push edi
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], ecx
call fcn.00543c20
mov esi, eax
neg esi
sbb esi, esi
add esi, 1
test bl, 2
je 0x4513af
xor ecx, ecx
test esi, esi
sete cl
pop edi
mov esi, ecx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1b8], 0
jne case.0x44deda.396
cmp dword [esp + 0x1b4], 0
jne case.0x44deda.396
mov edx, dword [esp + 0x1ac]
push edi
push edx
call fcn.00427ef0
cmp dword [edi + 0xc], 0x153
mov esi, eax
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1b8], 0
jne case.0x44deda.396
cmp dword [esp + 0x1b4], 0
jne case.0x44deda.396
mov ecx, dword [esp + 0x1ac]
push edi
push ecx
call fcn.00427f50
cmp dword [edi + 0xc], 0x155
mov esi, eax
jne 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1b8], 0
jne case.0x44deda.396
cmp dword [esp + 0x1b4], 0
jne case.0x44deda.396
mov eax, dword [esp + 0x1ac]
push edi
push eax
call fcn.00428020
cmp dword [edi + 0xc], 0x157
mov esi, eax
jne 0x4513af
xor ecx, ecx
test esi, esi
sete cl
pop edi
mov esi, ecx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1b8], 0
jne case.0x44deda.396
cmp dword [esp + 0x1b4], 0
jne case.0x44deda.396
mov edx, dword [esp + 0x1ac]
push edi
push edx
call fcn.00428160
cmp dword [edi + 0xc], 0x159
mov esi, eax
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1b8], 0
jne case.0x44deda.396
cmp dword [esp + 0x1b4], 0
jne case.0x44deda.396
mov ecx, dword [esp + 0x1ac]
push edi
push ecx
call fcn.00428100
cmp dword [edi + 0xc], 0x15b
mov esi, eax
jne 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1b8], 0
jne case.0x44deda.396
cmp dword [esp + 0x1b4], 0
jne case.0x44deda.396
mov eax, dword [esp + 0x1ac]
push edi
push eax
call fcn.00429e00
cmp dword [edi + 0xc], 0x15d
mov esi, eax
jne 0x4513af
xor ecx, ecx
test esi, esi
sete cl
pop edi
mov esi, ecx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1b8], 0
jne case.0x44deda.396
cmp dword [esp + 0x1b4], 0
jne case.0x44deda.396
mov edx, dword [esp + 0x1ac]
push edi
push edx
call fcn.00429f80
cmp dword [edi + 0xc], 0x15f
mov esi, eax
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1b8], 0
jne case.0x44deda.396
cmp dword [esp + 0x1b4], 0
jne case.0x44deda.396
mov ecx, dword [esp + 0x1ac]
push edi
push ecx
call fcn.00428550
cmp dword [edi + 0xc], 0x16d
mov esi, eax
jne 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1b8], 0
jne case.0x44deda.396
cmp dword [esp + 0x1b4], 0
jne case.0x44deda.396
mov eax, dword [esp + 0x1ac]
push edi
push eax
call fcn.0042a0b0
cmp dword [edi + 0xc], 0x161
mov esi, eax
jne 0x4513af
xor ecx, ecx
test esi, esi
sete cl
pop edi
mov esi, ecx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1b8], 0
jne case.0x44deda.396
cmp dword [esp + 0x1b4], 0
jne case.0x44deda.396
mov edx, dword [esp + 0x1ac]
push edi
push edx
call fcn.0042a1e0
cmp dword [edi + 0xc], 0x163
mov esi, eax
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1b8], 0
jne case.0x44deda.396
cmp dword [esp + 0x1b4], 0
jne case.0x44deda.396
mov ecx, dword [esp + 0x1ac]
push edi
push ecx
call fcn.0042a300
cmp dword [edi + 0xc], 0x165
mov esi, eax
jne 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1b8], 0
jne case.0x44deda.396
cmp dword [esp + 0x1b4], 0
jne case.0x44deda.396
mov eax, dword [esp + 0x1ac]
push edi
push eax
call fcn.0042a420
cmp dword [edi + 0xc], 0x167
mov esi, eax
jne 0x4513af
xor ecx, ecx
test esi, esi
sete cl
pop edi
mov esi, ecx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1b8], 0
jne case.0x44deda.396
cmp dword [esp + 0x1b4], 0
jne case.0x44deda.396
mov edx, dword [esp + 0x1ac]
push edi
push edx
call fcn.0042a540
cmp dword [edi + 0xc], 0x169
mov esi, eax
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1b8], 0
jne case.0x44deda.396
cmp dword [esp + 0x1b4], 0
jne case.0x44deda.396
mov ecx, dword [esp + 0x1ac]
push edi
push ecx
call fcn.0042a660
cmp dword [edi + 0xc], 0x16b
mov esi, eax
jne 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
lea ebx, [eax - 0xe6]
je 0x450ea4
mov eax, dword [esp + 0x1ac]
push eax
push esi
call fcn.00424170
jmp 0x450eb2
mov ecx, dword [esp + 0x1ac]
push ecx
push esi
call fcn.00424170
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x14]
push eax
lea eax, [edi + ecx*8 + 0x1c]
mov ecx, dword [esi]
push eax
mov eax, dword [esi + 8]
mov edx, ebx
push ecx
and edx, 3
mov ecx, dword [edx*4 + 0x57fe04]
push eax
call ecx
test bl, 4
mov esi, eax
je 0x4513af
xor edx, edx
test esi, esi
sete dl
pop edi
mov esi, edx
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c
cmp dword [esp + 0x1a8], 0
mov ebx, dword [esp + 0x1b0]
je 0x450f17
mov eax, dword [esp + 0x1ac]
push eax
push ebx
call fcn.00424170
jmp 0x450f25
mov ecx, dword [esp + 0x1ac]
push ecx
push ebx
call fcn.00424170
mov ecx, dword [edi + 0x18]
cmp ecx, dword [ebx]
mov edx, dword [edi + 0x14]
lea eax, [edi + edx*8 + 0x1c]
jg 0x450f5e
lea esi, [eax + ecx]
mov ecx, dword [ebx + 8]
sub ecx, eax
cmp eax, esi
je 0x450f57
mov ebp, dword [0x58b5d0]
movzx edx, byte [ecx + eax]
mov dl, byte [edx + ebp]
cmp dl, byte [eax]
jne 0x450f5e
add eax, 1
cmp eax, esi
jne 0x450f45
mov esi, 1
jmp 0x450f60
xor esi, esi
cmp dword [edi + 0xc], 0xef
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
lea ebx, [eax - 0xf0]
je 0x450f99
mov ecx, dword [esp + 0x1ac]
push ecx
push esi
call fcn.00424170
jmp 0x450fa7
mov edx, dword [esp + 0x1ac]
push edx
push esi
call fcn.00424170
mov ecx, dword [edi + 0x18]
mov edx, dword [edi + 0x14]
push ecx
lea ecx, [edi + edx*4 + 0x1c]
mov edx, dword [esi]
push ecx
mov ecx, dword [esi + 8]
mov eax, ebx
push edx
and eax, 3
mov edx, dword [eax*4 + 0x57fe14]
push ecx
call edx
mov esi, eax
test bl, 4
jmp 0x44f07f
cmp dword [esp + 0x1a8], 0
mov ebx, dword [esp + 0x1b0]
je 0x450ff3
mov ecx, dword [esp + 0x1ac]
push ecx
push ebx
call fcn.00424170
jmp 0x451001
mov edx, dword [esp + 0x1ac]
push edx
push ebx
call fcn.00424170
mov ecx, dword [edi + 0x18]
cmp ecx, dword [ebx]
mov eax, dword [edi + 0x14]
lea eax, [edi + eax*4 + 0x1c]
jg 0x45103a
lea esi, [eax + ecx]
mov ecx, dword [ebx + 8]
sub ecx, eax
cmp eax, esi
je 0x451033
mov ebp, dword [0x58b5d0]
movzx edx, byte [ecx + eax]
mov dl, byte [edx + ebp]
cmp dl, byte [eax]
jne 0x45103a
add eax, 1
cmp eax, esi
jne 0x451021
mov esi, 1
jmp 0x45103c
xor esi, esi
cmp dword [edi + 0xc], 0xf9
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
lea ebx, [eax - 0xfa]
je 0x451075
mov ecx, dword [esp + 0x1ac]
push ecx
push esi
call fcn.00424170
jmp 0x451083
mov edx, dword [esp + 0x1ac]
push edx
push esi
call fcn.00424170
mov ecx, dword [edi + 0x18]
mov edx, dword [edi + 0x14]
push ecx
lea ecx, [edi + edx*4 + 0x1c]
mov edx, dword [esi]
push ecx
mov ecx, dword [esi + 8]
mov eax, ebx
push edx
and eax, 3
mov edx, dword [eax*4 + 0x57fe24]
push ecx
call edx
mov esi, eax
test bl, 4
jmp 0x44f07f
cmp dword [esp + 0x1a8], 0
mov ebx, dword [esp + 0x1b0]
je 0x4510cf
mov ecx, dword [esp + 0x1ac]
push ecx
push ebx
call fcn.00424170
jmp 0x4510dd
mov edx, dword [esp + 0x1ac]
push edx
push ebx
call fcn.00424170
mov ecx, dword [edi + 0x18]
cmp ecx, dword [ebx]
mov eax, dword [edi + 0x14]
lea eax, [edi + eax*4 + 0x1c]
jg 0x451119
lea esi, [eax + ecx]
mov ecx, dword [ebx + 8]
sub ecx, eax
cmp eax, esi
je 0x451112
mov ebp, dword [0x58b5d0]
lea ecx, [ecx]
movzx edx, byte [ecx + eax]
mov dl, byte [edx + ebp]
cmp dl, byte [eax]
jne 0x451119
add eax, 1
cmp eax, esi
jne 0x451100
mov esi, 1
jmp 0x45111b
xor esi, esi
cmp dword [edi + 0xc], 0x103
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
lea ebx, [eax - 0x104]
je 0x451154
mov ecx, dword [esp + 0x1ac]
push ecx
push esi
call fcn.00424170
jmp 0x451162
mov edx, dword [esp + 0x1ac]
push edx
push esi
call fcn.00424170
mov ecx, dword [edi + 0x18]
mov edx, dword [esi]
push ecx
mov ecx, dword [esi + 8]
add edi, 0x1c
push edi
mov eax, ebx
push edx
and eax, 3
mov edx, dword [eax*4 + 0x57fe34]
push ecx
call edx
mov esi, eax
test bl, 4
jmp 0x44f07f
cmp dword [esp + 0x1a8], 0
mov ebx, dword [esp + 0x1b0]
je 0x4511aa
mov ecx, dword [esp + 0x1ac]
push ecx
push ebx
call fcn.00424170
jmp 0x4511b8
mov edx, dword [esp + 0x1ac]
push edx
push ebx
call fcn.00424170
mov ecx, dword [edi + 0x18]
cmp ecx, dword [ebx]
lea eax, [edi + 0x1c]
jg 0x4511ed
lea esi, [eax + ecx]
mov ecx, dword [ebx + 8]
sub ecx, eax
cmp eax, esi
je 0x4511e6
mov ebp, dword [0x58b5d0]
movzx edx, byte [ecx + eax]
mov dl, byte [edx + ebp]
cmp dl, byte [eax]
jne 0x4511ed
add eax, 1
cmp eax, esi
jne 0x4511d4
mov esi, 1
jmp 0x4511ef
xor esi, esi
cmp dword [edi + 0xc], 0x10d
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
lea ebx, [eax - 0x10e]
je 0x451228
mov ecx, dword [esp + 0x1ac]
push ecx
push esi
call fcn.00424170
jmp 0x451236
mov edx, dword [esp + 0x1ac]
push edx
push esi
call fcn.00424170
mov ecx, dword [edi + 0x18]
mov edx, dword [esi]
push ecx
mov ecx, dword [esi + 8]
add edi, 0x1c
push edi
mov eax, ebx
push edx
and eax, 3
mov edx, dword [eax*4 + 0x57fe44]
push ecx
call edx
mov esi, eax
test bl, 4
jmp 0x44f07f
cmp dword [esp + 0x1a8], 0
mov ebx, dword [esp + 0x1b0]
je 0x45127e
mov ecx, dword [esp + 0x1ac]
push ecx
push ebx
call fcn.00424170
jmp 0x45128c
mov edx, dword [esp + 0x1ac]
push edx
push ebx
call fcn.00424170
mov ecx, dword [edi + 0x18]
cmp ecx, dword [ebx]
lea eax, [edi + 0x1c]
jg 0x4512c9
lea esi, [eax + ecx]
mov ecx, dword [ebx + 8]
sub ecx, eax
cmp eax, esi
je 0x4512c2
mov ebp, dword [0x58b5d0]
jmp 0x4512b0
movzx edx, byte [ecx + eax]
mov dl, byte [edx + ebp]
cmp dl, byte [eax]
jne 0x4512c9
add eax, 1
cmp eax, esi
jne 0x4512b0
mov esi, 1
jmp 0x4512cb
xor esi, esi
cmp dword [edi + 0xc], 0x117
jne 0x4513af
jmp 0x44f085
cmp dword [esp + 0x1a8], 0
mov esi, dword [esp + 0x1b0]
lea ebx, [eax - 0x11e]
je 0x451304
mov ecx, dword [esp + 0x1ac]
push ecx
push esi
call fcn.00424170
jmp 0x451312
mov edx, dword [esp + 0x1ac]
push edx
push esi
call fcn.00424170
mov ecx, dword [edi + 0x14]
mov edx, dword [esi]
push ecx
mov ecx, dword [esi + 8]
add edi, 0x18
push edi
mov eax, ebx
push edx
and eax, 3
mov edx, dword [eax*4 + 0x57fe54]
push ecx
call edx
mov esi, eax
test bl, 4
jmp 0x44f07f
cmp dword [esp + 0x1a8], 0
mov ebx, dword [esp + 0x1b0]
je 0x45135a
mov ecx, dword [esp + 0x1ac]
push ecx
push ebx
call fcn.00424170
jmp 0x451368
mov edx, dword [esp + 0x1ac]
push edx
push ebx
call fcn.00424170
mov ecx, dword [edi + 0x14]
cmp ecx, dword [ebx]
lea eax, [edi + 0x18]
jg 0x45139d
lea esi, [eax + ecx]
mov ecx, dword [ebx + 8]
sub ecx, eax
cmp eax, esi
je 0x451396
mov ebp, dword [0x58b5d0]
movzx edx, byte [ecx + eax]
mov dl, byte [edx + ebp]
cmp dl, byte [eax]
jne 0x45139d
add eax, 1
cmp eax, esi
jne 0x451384
mov esi, 1
jmp 0x45139f
xor esi, esi
cmp dword [edi + 0xc], 0x127
jne 0x4513af
jmp 0x44f085
xor esi, esi
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x18c
ret 0x1c