Function at 0x43cd80
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
sub esp, 0xe0
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x108]
mov eax, dword [edi]
cmp eax, dword [edi + 4]
jae 0x43f5c0
mov ebx, dword [esp + 0x110]
mov esi, dword [esp + 0xf4]
lea ebx, [ebx]
mov ecx, dword [esp + 0x118]
inc dword [edi]
cmp ecx, dword [edi + 8]
jae 0x43f5d2
test byte [esp + 0x114], 2
mov edx, dword [esp + 0x10c]
mov dword [esp + 0x24], edx
je 0x43cdf0
lea eax, [esp + 0x70]
mov dword [esp + 0x74], esi
mov dword [esp + 0x70], ebx
mov dword [esp + 0x110], eax
lea ebx, [ebx]
mov ebx, dword [esp + 0xf8]
mov cl, byte [ebx]
movzx eax, cl
xor edx, edx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], edx
mov dword [esp + 0x20], eax
cmp eax, 0x76
ja case.0x43ce1a.15
movzx eax, byte [eax + 0x440918]
jmp dword [eax*4 + 0x4407ec]
movzx ebp, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl ebp, 8
or ebp, ecx
cmp byte [ebx + 3], 0x53
jne 0x43cef2
mov ecx, dword [0x47f42c]
cmp ecx, edx
je 0x43cee0
movzx edx, byte [ebx + 4]
mov eax, dword [edi + 0xc]
mov dword [esp + 0x48], eax
mov eax, dword [edi + 0x68]
mov dword [esp + 0x44], edx
mov edx, dword [edi + 0x6c]
sub edx, eax
mov dword [esp + 0x50], edx
mov edx, dword [esp + 0xfc]
sub edx, eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x54], edx
mov edx, esi
sub edx, eax
movzx eax, byte [ebx + 5]
shl eax, 8
mov dword [esp + 0x58], edx
movzx edx, byte [ebx + 6]
or eax, edx
movzx edx, byte [ebx + 8]
mov dword [esp + 0x68], eax
movzx eax, byte [ebx + 7]
shl eax, 8
or eax, edx
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x104]
cdq
sub eax, edx
mov edx, dword [edi + 0x98]
sar eax, 1
mov dword [esp + 0x5c], eax
mov eax, dword [edi + 0x84]
mov dword [esp + 0x60], eax
lea eax, [esp + 0x40]
push eax
mov dword [esp + 0x44], 1
mov dword [esp + 0x68], edx
call ecx
add esp, 4
test eax, eax
jg 0x43fad4
jl 0x4407de
movzx ecx, byte [0x46da4b]
add ebx, ecx
mov dword [esp + 0xf8], ebx
xor edx, edx
movzx ecx, byte [ebx + 3]
lea eax, [ebx + 3]
cmp ecx, 0x66
je 0x43d138
cmp ecx, 0x67
je 0x43d138
cmp ecx, 0x64
je 0x43cf85
cmp ecx, 0x65
je 0x43cf85
cmp ecx, 0x68
jne 0x43cf2e
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
add ebx, edx
jmp 0x43d307
mov ecx, dword [esp + 0x118]
mov edx, dword [esp + 0x10c]
inc ecx
push ecx
mov ecx, dword [esp + 0x108]
push 1
push 0
push edx
mov edx, dword [esp + 0x110]
push edi
push ecx
mov ecx, dword [esp + 0x114]
push edx
push ecx
push eax
push esi
call fcn.0043cd80
add esp, 0x28
cmp eax, 1
je 0x43f2d8
test eax, eax
je 0x43cf7e
cmp eax, 0xfffffc1e
jne 0x4407de
add ebx, ebp
jmp 0x43d307
movzx eax, byte [ebx + 4]
movzx ebp, byte [ebx + 5]
shl eax, 8
or eax, ebp
add eax, eax
cmp eax, dword [esp + 0x104]
jge 0x43cfaa
mov ebp, dword [edi + 0xc]
cmp dword [ebp + eax*4], edx
jge 0x43d124
mov dword [esp + 0x10], edx
cmp ecx, 0x65
jne 0x43d110
mov ecx, dword [edi + 0x28]
sar eax, 1
cmp dword [edi + 0x20], 0
mov edx, ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x14], 0
jle 0x43cff9
movzx ebp, byte [edx]
movzx edx, byte [edx + 1]
shl ebp, 8
or ebp, edx
cmp ebp, eax
je 0x43cff9
mov edx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x14]
add edx, dword [edi + 0x24]
inc ebp
cmp ebp, dword [edi + 0x20]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x14], ebp
jl 0x43cfd0
mov eax, dword [esp + 0x14]
cmp eax, dword [edi + 0x20]
jge 0x43d110
mov eax, dword [esp + 0x1c]
mov ebp, eax
cmp eax, ecx
jbe 0x43d081
sub ebp, dword [edi + 0x24]
add eax, 2
lea ecx, [ebp + 2]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43d040
test dl, dl
je 0x43d03c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43d040
add eax, 2
add ecx, 2
test dl, dl
jne 0x43d020
xor eax, eax
jmp 0x43d045
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x43d081
movzx eax, byte [ebp]
movzx ecx, byte [ebp + 1]
shl eax, 8
or eax, ecx
add eax, eax
cmp eax, dword [esp + 0x104]
jge 0x43d06e
mov edx, dword [edi + 0xc]
cmp dword [edx + eax*4], 0
jge 0x43d124
mov dword [esp + 0x10], 0
cmp ebp, dword [edi + 0x28]
jbe 0x43d081
mov eax, dword [esp + 0x1c]
jmp 0x43d010
mov eax, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
inc eax
cmp eax, dword [edi + 0x20]
mov dword [esp + 0x14], eax
jge 0x43d110
mov eax, ebp
add eax, 2
mov dword [esp + 0x1c], eax
add ebp, dword [edi + 0x24]
mov eax, dword [esp + 0x1c]
lea ecx, [ebp + 2]
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43d0d0
test dl, dl
je 0x43d0cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43d0d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x43d0b0
xor eax, eax
jmp 0x43d0d5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x43d110
movzx eax, byte [ebp]
movzx ecx, byte [ebp + 1]
shl eax, 8
or eax, ecx
add eax, eax
cmp eax, dword [esp + 0x104]
jge 0x43d0fa
mov edx, dword [edi + 0xc]
cmp dword [edx + eax*4], 0
jge 0x43d124
mov eax, dword [esp + 0x14]
inc eax
cmp eax, dword [edi + 0x20]
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], eax
jl 0x43d0a0
movzx eax, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl eax, 8
or eax, ecx
add ebx, eax
jmp 0x43d2fc
mov eax, 3
mov dword [esp + 0x10], 1
add ebx, eax
jmp 0x43d2fc
mov edx, dword [edi + 0x94]
test edx, edx
jne 0x43d156
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
add ebx, edx
jmp 0x43d307
movzx eax, byte [ebx + 4]
movzx ebx, byte [ebx + 5]
shl eax, 8
or eax, ebx
cmp eax, 0xffff
je 0x43d210
mov edx, dword [edx + 4]
mov dword [esp + 0x1c], edx
cmp eax, edx
je 0x43d210
mov dword [esp + 0x10], 0
cmp ecx, 0x67
jne 0x43d2da
cmp dword [edi + 0x20], 0
mov ecx, dword [edi + 0x28]
mov ebx, ecx
mov dword [esp + 0x14], 0
jle 0x43d1c2
movzx edx, byte [ebx]
movzx ebp, byte [ebx + 1]
shl edx, 8
or edx, ebp
cmp edx, eax
je 0x43d1c2
mov edx, dword [esp + 0x14]
add ebx, dword [edi + 0x24]
inc edx
cmp edx, dword [edi + 0x20]
mov dword [esp + 0x14], edx
jl 0x43d1a1
mov eax, dword [esp + 0x14]
cmp eax, dword [edi + 0x20]
jge 0x43d2da
mov ebp, ebx
cmp ebx, ecx
jbe 0x43d258
lea esp, [esp]
sub ebp, dword [edi + 0x24]
lea eax, [ebx + 2]
lea ecx, [ebp + 2]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43d222
test dl, dl
je 0x43d20c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43d222
add eax, 2
add ecx, 2
test dl, dl
jne 0x43d1f0
xor eax, eax
jmp 0x43d227
mov dword [esp + 0x10], 1
mov eax, 3
jmp 0x43d2ee
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x43d258
movzx ecx, byte [ebp]
movzx edx, byte [ebp + 1]
shl ecx, 8
or ecx, edx
cmp ecx, dword [esp + 0x1c]
sete al
mov dword [esp + 0x10], eax
test eax, eax
jne 0x43d2d3
cmp ebp, dword [edi + 0x28]
ja 0x43d1e0
test eax, eax
jne 0x43d2d3
mov eax, dword [esp + 0x14]
inc eax
cmp eax, dword [edi + 0x20]
mov ebp, ebx
mov dword [esp + 0x14], eax
jge 0x43d2da
add ebx, 2
nop
add ebp, dword [edi + 0x24]
mov eax, ebx
lea ecx, [ebp + 2]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x43d298
test dl, dl
je 0x43d294
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x43d298
add eax, 2
add ecx, 2
test dl, dl
jne 0x43d278
xor eax, eax
jmp 0x43d29d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x43d2da
movzx ecx, byte [ebp]
movzx eax, byte [ebp + 1]
shl ecx, 8
or eax, ecx
xor edx, edx
cmp eax, dword [esp + 0x1c]
sete dl
mov eax, edx
mov dword [esp + 0x10], eax
test eax, eax
jne 0x43d2d3
mov eax, dword [esp + 0x14]
inc eax
cmp eax, dword [edi + 0x20]
mov dword [esp + 0x14], eax
jl 0x43d270
test edx, edx
je 0x43d2da
mov eax, 3
jmp 0x43d2ee
mov ecx, dword [esp + 0xf8]
movzx eax, byte [ecx + 1]
movzx ecx, byte [ecx + 2]
shl eax, 8
or eax, ecx
add dword [esp + 0xf8], eax
mov ebx, dword [esp + 0xf8]
cmp dword [esp + 0x10], 0
jne 0x43f304
cmp byte [ebx], 0x54
je 0x43f304
add ebx, 3
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
movzx eax, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl eax, 8
or eax, edx
lea ecx, [eax + eax]
cmp ecx, dword [edi + 0x14]
mov dword [edi + 0x84], eax
jl 0x43d350
add ebx, 3
mov dword [edi + 0x38], 1
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
mov ebp, dword [edi + 0x10]
mov edx, dword [edi + 0xc]
sub ebp, eax
mov eax, dword [edx + ebp*4]
mov dword [edx + ecx*4], eax
mov eax, dword [edi + 0xc]
mov edx, esi
sub edx, dword [edi + 0x68]
cmp dword [esp + 0x104], ecx
mov dword [eax + ecx*4 + 4], edx
jg 0x43d37d
add ecx, 2
mov dword [esp + 0x104], ecx
add ebx, 3
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
mov ebp, dword [edi + 0x94]
test ebp, ebp
je 0x43fba0
cmp dword [ebp + 4], 0
jne 0x43fba0
mov ecx, dword [ebp]
mov dword [edi + 0x94], ecx
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
mov ecx, dword [edi + 0xc]
add edx, edx
add edx, edx
push edx
push eax
push ecx
call fcn.0044cf90
mov edx, dword [ebp + 0x14]
mov eax, dword [esp + 0x30]
mov ecx, dword [ebp + 8]
add esp, 0xc
mov dword [esp + 0x104], edx
mov dword [esp + 0x10c], eax
mov dword [esp + 0xf8], ecx
jmp 0x43cdf0
movzx edx, byte [ebx + 1]
add ebx, 2
mov dword [esp + 0x10c], edx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
mov ebp, dword [esp + 0x118]
mov ebx, dword [esp + 0xfc]
inc ebp
mov eax, dword [esp + 0x10c]
mov ecx, dword [esp + 0x104]
mov edx, dword [esp + 0x100]
push ebp
push 0
push 0
push eax
mov eax, dword [esp + 0x108]
push edi
push ecx
push edx
push ebx
add eax, 3
push eax
push esi
call fcn.0043cd80
add esp, 0x28
cmp eax, 1
je 0x43d484
cmp eax, 0xfffffc19
je 0x43d484
test eax, eax
je 0x43d460
cmp eax, 0xfffffc1e
jne 0x4407de
mov eax, dword [esp + 0xf8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
cmp byte [eax], 0x54
mov dword [esp + 0xf8], eax
je 0x43d412
jmp 0x43d495
mov eax, dword [edi + 0x70]
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0xf8]
cmp byte [eax], 0x55
je 0x4400bd
test byte [esp + 0x114], 1
jne 0x43fe10
lea esp, [esp]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
cmp byte [eax], 0x54
je 0x43d4b0
add eax, 3
mov dword [esp + 0xf8], eax
mov eax, dword [edi + 0x80]
mov dword [esp + 0x104], eax
jmp 0x43cdf0
mov ebp, dword [esp + 0x118]
mov ebx, dword [esp + 0x100]
inc ebp
nop
mov ecx, dword [esp + 0x10c]
mov edx, dword [esp + 0x104]
mov eax, dword [esp + 0xfc]
push ebp
push 0
push 0
push ecx
mov ecx, dword [esp + 0x108]
push edi
push edx
push ebx
push eax
add ecx, 3
push ecx
push esi
call fcn.0043cd80
add esp, 0x28
cmp eax, 1
je 0x43e696
cmp eax, 0xfffffc19
je 0x43e696
cmp eax, 0xfffffc1c
je 0x43d583
cmp eax, 0xfffffc1b
je 0x43d583
cmp eax, 0xfffffc1a
je 0x43d583
test eax, eax
je 0x43d55b
cmp eax, 0xfffffc1e
jne 0x4407de
mov eax, dword [esp + 0xf8]
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add eax, edx
cmp byte [eax], 0x54
mov dword [esp + 0xf8], eax
je 0x43d4f0
jmp 0x43d5a4
mov eax, dword [esp + 0xf8]
lea ebx, [ebx]
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add eax, edx
cmp byte [eax], 0x54
je 0x43d590
test byte [esp + 0x114], 1
jne 0x43fe10
add eax, 3
mov dword [esp + 0xf8], eax
jmp 0x43cdf0
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
sub esi, edx
cmp esi, dword [edi + 0x68]
jb case.0x43ec97.14
cmp esi, dword [edi + 0x78]
jae 0x43d5e1
mov dword [edi + 0x78], esi
add ebx, 3
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
mov ecx, dword [0x47f42c]
cmp ecx, edx
je 0x43d698
movzx edx, byte [ebx + 1]
mov eax, dword [edi + 0xc]
mov dword [esp + 0x48], eax
mov eax, dword [edi + 0x68]
mov dword [esp + 0x44], edx
mov edx, dword [edi + 0x6c]
sub edx, eax
mov dword [esp + 0x50], edx
mov edx, dword [esp + 0xfc]
sub edx, eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x54], edx
mov edx, esi
sub edx, eax
movzx eax, byte [ebx + 2]
shl eax, 8
mov dword [esp + 0x58], edx
movzx edx, byte [ebx + 3]
or eax, edx
movzx edx, byte [ebx + 5]
mov dword [esp + 0x68], eax
movzx eax, byte [ebx + 4]
shl eax, 8
or eax, edx
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x104]
cdq
sub eax, edx
mov edx, dword [edi + 0x98]
sar eax, 1
mov dword [esp + 0x5c], eax
mov eax, dword [edi + 0x84]
mov dword [esp + 0x60], eax
lea eax, [esp + 0x40]
push eax
mov dword [esp + 0x44], 1
mov dword [esp + 0x68], edx
call ecx
add esp, 4
test eax, eax
jg 0x43fad4
jl 0x4407de
add ebx, 6
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
mov ebp, dword [esp + 0xf8]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x110]
mov dword [esp + 0x20], esi
lea ecx, [ecx]
mov eax, dword [esp + 0x118]
mov ecx, dword [esp + 0x10c]
mov edx, dword [esp + 0x104]
inc eax
push eax
mov eax, dword [esp + 0x104]
push 0
push ebx
push ecx
mov ecx, dword [esp + 0x10c]
push edi
push edx
push eax
push ecx
lea edx, [ebp + 3]
push edx
push esi
call fcn.0043cd80
add esp, 0x28
cmp eax, 1
je 0x43d725
test eax, eax
je 0x43d70e
cmp eax, 0xfffffc1e
jne 0x4407de
movzx eax, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
shl eax, 8
or eax, ecx
add ebp, eax
cmp byte [ebp], 0x54
je 0x43d6c0
jmp 0x43d72f
mov edx, dword [edi + 0x70]
mov dword [esp + 0xfc], edx
mov al, byte [ebp]
cmp al, 0x5d
je 0x43d740
cmp al, 0x54
jne 0x43da5c
mov edi, edi
movzx eax, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
shl eax, 8
or eax, ecx
add ebp, eax
cmp byte [ebp], 0x54
je 0x43d740
cmp byte [ebp], 0x55
mov eax, dword [edi + 0x80]
mov esi, dword [edi + 0x74]
mov dword [esp + 0x104], eax
je 0x43d775
cmp esi, dword [esp + 0x20]
jne 0x43f447
add ebp, 3
mov dword [esp + 0xf8], ebp
jmp 0x43cdf0
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
add ebx, edx
cmp byte [ebx], 0x54
je case.0x43ce1a.84
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
mov ecx, dword [esp + 0x118]
mov edx, dword [esp + 0x110]
mov eax, dword [esp + 0x10c]
inc ecx
push ecx
mov ecx, dword [esp + 0x108]
push 0
push edx
mov edx, dword [esp + 0x10c]
push eax
mov eax, dword [esp + 0x10c]
push edi
push ecx
push edx
push eax
lea ebp, [ebx + 1]
push ebp
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
lea ecx, [ecx]
movzx ecx, byte [ebp + 1]
movzx edx, byte [ebp + 2]
shl ecx, 8
or ecx, edx
add ebp, ecx
cmp byte [ebp], 0x54
je 0x43d7f0
add ebp, 3
mov dword [esp + 0xf8], ebp
jmp 0x43cdf0
inc ebx
mov eax, ebx
jmp 0x43d820
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
cmp byte [eax], 0x54
je 0x43d820
mov ecx, dword [esp + 0x118]
mov edx, dword [esp + 0x110]
inc ecx
push ecx
mov ecx, dword [esp + 0x110]
push 0
push edx
mov edx, dword [esp + 0x110]
push ecx
mov ecx, dword [esp + 0x110]
push edi
push edx
mov edx, dword [esp + 0x114]
push ecx
push edx
add eax, 3
push eax
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
lea eax, [ebx + 1]
lea esp, [esp]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
cmp byte [eax], 0x54
je 0x43d890
add eax, 3
mov dword [esp + 0xf8], eax
jmp 0x43cdf0
movzx ecx, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl ecx, 8
or ecx, edx
mov eax, ebx
sub eax, ecx
mov dword [esp + 0x10], eax
mov al, byte [eax]
cmp al, 0x61
jb 0x43d8e7
mov ecx, dword [esp + 0x110]
mov edx, dword [ecx + 4]
mov ebx, dword [ecx]
mov dword [esp + 0x20], edx
mov dword [esp + 0x110], ebx
jmp 0x43d8f6
mov ebx, dword [esp + 0x110]
mov dword [esp + 0x20], 0
cmp al, 0x58
je 0x43fe65
cmp al, 0x59
je 0x43fe65
cmp al, 0x5a
je 0x43fe65
cmp al, 0x5b
je 0x43fe65
cmp al, 0x5d
je 0x43fe65
cmp al, 0x5f
je 0x43d92a
cmp al, 0x62
jne 0x43d9d3
mov ecx, dword [esp + 0x10]
movzx eax, byte [ecx + 3]
movzx ecx, byte [ecx + 4]
shl eax, 8
or eax, ecx
lea ecx, [eax + eax]
cmp ecx, dword [edi + 0x14]
mov dword [edi + 0x84], eax
jl 0x43d952
mov dword [edi + 0x38], 1
jmp 0x43d97f
mov ebp, dword [edi + 0x10]
mov edx, dword [edi + 0xc]
sub ebp, eax
mov ebp, dword [edx + ebp*4]
mov dword [edx + ecx*4], ebp
mov ebp, dword [edi + 0xc]
mov edx, esi
sub edx, dword [edi + 0x68]
cmp dword [esp + 0x104], ecx
mov dword [ebp + ecx*4 + 4], edx
jg 0x43d97f
add ecx, 2
mov dword [esp + 0x104], ecx
mov ebp, dword [edi + 0x94]
test ebp, ebp
je 0x43d9d3
cmp dword [ebp + 4], eax
jne 0x43d9d3
mov eax, dword [ebp]
mov dword [edi + 0x94], eax
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp + 0xc]
mov eax, dword [edi + 0xc]
add ecx, ecx
add ecx, ecx
push ecx
push edx
push eax
call fcn.0044b450
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 8]
mov eax, dword [esp + 0x30]
add esp, 0xc
mov dword [esp + 0x104], ecx
mov dword [esp + 0xf8], edx
mov dword [esp + 0x10c], eax
jmp 0x43cdf0
mov ecx, dword [esp + 0xf8]
cmp byte [ecx], 0x55
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x10c], ebp
je 0x43d9f4
cmp esi, dword [esp + 0x20]
jne 0x43f4f2
add ecx, 3
mov dword [esp + 0xf8], ecx
jmp 0x43cdf0
cmp dword [edi + 0x3c], edx
je 0x43da11
cmp esi, dword [edi + 0x68]
je 0x4400bd
test byte [esp + 0x10c], 2
je case.0x43ce1a.1
mov eax, dword [edi + 0x68]
cmp esi, eax
je 0x43da8a
cmp esi, dword [edi + 0x6c]
je case.0x43ec97.14
mov ecx, dword [edi + 0x18]
cmp ecx, edx
je 0x43da69
cmp esi, eax
jbe case.0x43ec97.14
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.004474b0
add esp, 0x14
test eax, eax
jne 0x43da8a
mov ecx, dword [esp + 0x100]
mov dword [edi + 0x9c], ecx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xe0
ret
mov ecx, dword [edi + 0x1c]
add eax, ecx
cmp esi, eax
jb case.0x43ec97.14
mov eax, esi
sub eax, ecx
mov dl, byte [eax]
cmp dl, byte [edi + 0x2c]
jne case.0x43ec97.14
cmp ecx, 1
je 0x43da8a
mov al, byte [eax + 1]
cmp al, byte [edi + 0x2d]
jne case.0x43ec97.14
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
cmp esi, dword [edi + 0x68]
jne 0x43fad4
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
mov ecx, dword [edi + 0x88]
add ecx, dword [edi + 0x68]
cmp esi, ecx
jne 0x4400bd
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
inc ebx
mov dword [esp + 0xfc], esi
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
test byte [esp + 0x10c], 2
je 0x43db6d
mov eax, dword [edi + 0x6c]
cmp esi, eax
jae 0x43db57
mov ecx, dword [edi + 0x18]
cmp ecx, edx
je 0x43db21
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.004473e0
add esp, 0x14
test eax, eax
je case.0x43ec97.14
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja case.0x43ec97.14
mov al, byte [esi]
cmp al, byte [edi + 0x2c]
jne case.0x43ec97.14
cmp ecx, 1
je 0x43db60
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x2d]
jne case.0x43ec97.14
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
cmp dword [edi + 0x40], edx
jne 0x43fad4
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
cmp dword [edi + 0x40], edx
jne 0x4400bd
cmp dword [edi + 0x50], edx
jne case.0x43ce1a.24
mov eax, dword [edi + 0x6c]
cmp esi, eax
je 0x43dbe6
mov ecx, dword [edi + 0x18]
cmp ecx, edx
je 0x43dbac
cmp esi, eax
jae case.0x43ec97.14
push 0
lea ebp, [edi + 0x1c]
push ebp
push eax
push ecx
push esi
call fcn.004473e0
add esp, 0x14
test eax, eax
je case.0x43ec97.14
jmp 0x43dbd8
mov ecx, dword [edi + 0x1c]
lea ebp, [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja case.0x43ec97.14
mov dl, byte [esi]
cmp dl, byte [edi + 0x2c]
jne case.0x43ec97.14
cmp ecx, 1
je 0x43dbd8
mov al, byte [esi + 1]
cmp al, byte [edi + 0x2d]
jne case.0x43ec97.14
mov ecx, dword [edi + 0x6c]
sub ecx, dword [ebp]
cmp esi, ecx
jne case.0x43ec97.14
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
cmp esi, dword [edi + 0x6c]
jb 0x43fad4
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
mov eax, dword [edi + 0x6c]
cmp esi, eax
je 0x43dc74
mov ecx, dword [edi + 0x18]
cmp ecx, edx
je 0x43dc3a
cmp esi, eax
jae 0x4400bd
push 0
lea ebp, [edi + 0x1c]
push ebp
push eax
push ecx
push esi
call fcn.004473e0
add esp, 0x14
test eax, eax
je 0x4400bd
jmp 0x43dc66
mov ecx, dword [edi + 0x1c]
lea ebp, [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x4400bd
mov dl, byte [esi]
cmp dl, byte [edi + 0x2c]
jne 0x4400bd
cmp ecx, 1
je 0x43dc66
mov al, byte [esi + 1]
cmp al, byte [edi + 0x2d]
jne 0x4400bd
mov ecx, dword [edi + 0x6c]
sub ecx, dword [ebp]
cmp esi, ecx
jne 0x4400bd
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
cmp esi, dword [edi + 0x68]
jne 0x43dc8a
xor ecx, ecx
jmp 0x43dca6
cmp esi, dword [edi + 0x78]
ja 0x43dc95
lea eax, [esi - 1]
mov dword [edi + 0x78], eax
movzx ecx, byte [esi - 1]
mov eax, dword [edi + 0x34]
movzx ecx, byte [ecx + eax]
shr ecx, 4
and ecx, 1
cmp esi, dword [edi + 0x6c]
jb 0x43dccf
mov eax, dword [edi + 0x7c]
cmp eax, edx
je 0x43dccb
cmp esi, dword [esp + 0xfc]
jbe 0x43dccb
cmp eax, 1
mov dword [edi + 0x5c], 1
jg 0x43fec4
xor eax, eax
jmp 0x43dcdf
movzx edx, byte [esi]
mov eax, dword [edi + 0x34]
movzx eax, byte [eax + edx]
shr eax, 4
and eax, 1
mov dl, byte [ebx]
inc ebx
mov dword [esp + 0xf8], ebx
cmp dl, 5
jne 0x43dcf7
xor edx, edx
cmp eax, ecx
sete dl
jmp 0x43dcfe
xor edx, edx
cmp eax, ecx
setne dl
mov eax, edx
test eax, eax
je 0x43cdf0
mov edx, dword [esp + 0x100]
mov dword [edi + 0x9c], edx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xe0
ret
mov ecx, dword [edi + 0x18]
cmp ecx, edx
je 0x43dd4b
mov eax, dword [edi + 0x6c]
cmp esi, eax
jae case.0x43ce1a.13
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.004473e0
add esp, 0x14
test eax, eax
jne 0x4400bd
jmp case.0x43ce1a.13
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x6c]
sub ecx, eax
cmp esi, ecx
ja case.0x43ce1a.13
mov dl, byte [esi]
cmp dl, byte [edi + 0x2c]
jne case.0x43ce1a.13
cmp eax, 1
je 0x4400bd
mov al, byte [esi + 1]
cmp al, byte [edi + 0x2d]
je 0x4400bd
mov ecx, esi
inc esi
cmp ecx, dword [edi + 0x6c]
jae 0x43fe9c
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
mov eax, esi
inc esi
cmp eax, dword [edi + 0x6c]
jae 0x43fee1
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
cmp esi, dword [edi + 0x6c]
jae 0x43ff26
movzx eax, byte [esi]
mov ecx, dword [edi + 0x34]
inc esi
test byte [eax + ecx], 4
jne case.0x43ec97.14
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
cmp esi, dword [edi + 0x6c]
jae 0x43ff26
movzx eax, byte [esi]
mov edx, dword [edi + 0x34]
inc esi
test byte [eax + edx], 4
je case.0x43ec97.14
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
cmp esi, dword [edi + 0x6c]
jae 0x43ff26
movzx eax, byte [esi]
mov ecx, dword [edi + 0x34]
inc esi
test byte [eax + ecx], 1
jne case.0x43ec97.14
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
cmp esi, dword [edi + 0x6c]
jae 0x43ff26
movzx eax, byte [esi]
mov edx, dword [edi + 0x34]
inc esi
test byte [eax + edx], 1
je case.0x43ec97.14
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
cmp esi, dword [edi + 0x6c]
jae 0x43ff26
movzx eax, byte [esi]
mov ecx, dword [edi + 0x34]
inc esi
test byte [eax + ecx], 0x10
jne case.0x43ec97.14
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
cmp esi, dword [edi + 0x6c]
jae 0x43ff26
movzx eax, byte [esi]
mov edx, dword [edi + 0x34]
inc esi
test byte [eax + edx], 0x10
je case.0x43ec97.14
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
mov ecx, dword [edi + 0x6c]
cmp esi, ecx
jae 0x43ff26
movzx eax, byte [esi]
inc esi
cmp eax, 0xd
ja 0x43decc
je 0x43deb5
cmp eax, 0xa
je 0x43def2
jbe case.0x43ec97.14
cmp eax, 0xc
jmp 0x43dee3
cmp esi, ecx
jae 0x43def2
cmp byte [esi], 0xa
jne 0x43def2
inc esi
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
cmp eax, 0x85
je 0x43dee9
cmp eax, 0x2027
jbe case.0x43ec97.14
cmp eax, 0x2029
ja case.0x43ec97.14
cmp dword [edi + 0x60], edx
jne 0x43fad4
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
cmp esi, dword [edi + 0x6c]
jae 0x43fee1
movzx eax, byte [esi]
inc esi
cmp eax, 0x180e
ja 0x43df3b
je 0x43fad4
cmp eax, 0xa0
ja 0x43df34
je 0x43fad4
cmp eax, 9
je 0x43fad4
cmp eax, 0x20
jmp 0x43df66
cmp eax, 0x1680
jmp 0x43df66
cmp eax, 0x205f
ja 0x43df61
je 0x43fad4
cmp eax, 0x2000
jb 0x43df6c
cmp eax, 0x200a
jbe 0x43fad4
cmp eax, 0x202f
jmp 0x43df66
cmp eax, 0x3000
je 0x43fad4
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
cmp esi, dword [edi + 0x6c]
jae 0x43fee1
movzx eax, byte [esi]
inc esi
cmp eax, 0x180e
ja 0x43dfa9
je 0x43dfd6
cmp eax, 0xa0
ja 0x43dfa2
je 0x43dfd6
cmp eax, 9
je 0x43dfd6
cmp eax, 0x20
jmp 0x43dfd0
cmp eax, 0x1680
jmp 0x43dfd0
cmp eax, 0x205f
ja 0x43dfcb
je 0x43dfd6
cmp eax, 0x2000
jb 0x43fad4
cmp eax, 0x200a
jbe 0x43dfd6
cmp eax, 0x202f
jmp 0x43dfd0
cmp eax, 0x3000
jne 0x43fad4
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
cmp esi, dword [edi + 0x6c]
jae 0x43fee1
movzx eax, byte [esi]
inc esi
cmp eax, 0x85
ja 0x43e007
je 0x43fad4
cmp eax, 0xa
jb 0x43e019
cmp eax, 0xd
jmp 0x43e013
cmp eax, 0x2028
jb 0x43e019
cmp eax, 0x2029
jbe 0x43fad4
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
cmp esi, dword [edi + 0x6c]
jae 0x43fee1
movzx eax, byte [esi]
inc esi
cmp eax, 0x85
ja 0x43e04a
je 0x43e060
cmp eax, 0xa
jb 0x43fad4
cmp eax, 0xd
jmp 0x43e05a
cmp eax, 0x2028
jb 0x43fad4
cmp eax, 0x2029
ja 0x43fad4
inc ebx
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
add edx, edx
add ebx, 3
cmp edx, dword [esp + 0x104]
mov dword [esp + 0x20], edx
mov dword [esp + 0xf8], ebx
jge 0x43e0a6
mov ecx, dword [edi + 0xc]
lea eax, [ecx + edx*4]
mov ecx, dword [eax]
test ecx, ecx
jl 0x43e0a6
mov ebp, dword [eax + 4]
sub ebp, ecx
jmp 0x43e0b6
cmp dword [edi + 0x48], 0
je 0x43e0b0
xor ebp, ebp
jmp 0x43e0b6
mov ebp, dword [edi + 0x6c]
sub ebp, esi
inc ebp
mov eax, dword [esp + 0xf8]
mov cl, byte [eax]
movzx eax, cl
lea ebx, [eax - 0x46]
cmp ebx, 7
ja case.default.0x43e0d5
movzx ebx, byte [ebx + 0x440998]
jmp dword [ebx*4 + 0x440990]
movsx ebx, byte [eax + 0x46cbda]
inc dword [esp + 0xf8]
add eax, 0xffffffba
mov ecx, eax
movsx eax, byte [eax + 0x46cc28]
and ecx, 1
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], eax
test eax, eax
jne 0x43e154
mov dword [esp + 0x10], SysReAllocStringLen
jmp 0x43e154
mov eax, dword [esp + 0xf8]
movzx ebx, byte [eax + 1]
xor edx, edx
cmp cl, 0x4d
movzx ecx, byte [eax + 2]
sete dl
shl ebx, 8
or ebx, ecx
movzx ecx, byte [eax + 3]
shl ecx, 8
mov dword [esp + 0x18], edx
movzx edx, byte [eax + 4]
or ecx, edx
mov dword [esp + 0x10], ecx
jne 0x43e14a
mov dword [esp + 0x10], SysReAllocStringLen
add eax, 5
mov dword [esp + 0xf8], eax
test ebp, ebp
je 0x43cdf0
cmp ebx, 1
mov dword [esp + 0x14], 1
jl 0x43e1a0
lea esp, [esp]
mov eax, dword [esp + 0x10c]
mov edx, dword [esp + 0x20]
push eax
push esi
mov ecx, edi
mov eax, ebp
call fcn.0043cd10
add esp, 8
test eax, eax
je 0x43ff6b
mov eax, dword [esp + 0x14]
inc eax
add esi, ebp
cmp eax, ebx
mov dword [esp + 0x14], eax
jle 0x43e170
mov eax, dword [esp + 0x10]
cmp ebx, eax
je 0x43cdf0
cmp dword [esp + 0x18], 0
je 0x440007
mov edx, dword [esp + 0x110]
mov eax, dword [esp + 0x10c]
mov ecx, dword [esp + 0x104]
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x118]
inc ebx
push ebx
push 0
push edx
mov edx, dword [esp + 0x10c]
push eax
mov eax, dword [esp + 0x10c]
push edi
push ecx
mov ecx, dword [esp + 0x110]
push edx
push eax
push ecx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
jmp 0x43e210
mov edx, dword [esp + 0x14]
cmp edx, dword [esp + 0x10]
jge case.0x43ec97.14
mov eax, dword [esp + 0x10c]
mov edx, dword [esp + 0x20]
push eax
push esi
mov ecx, edi
mov eax, ebp
call fcn.0043cd10
add esp, 8
test eax, eax
je 0x43ffb9
mov ecx, dword [esp + 0x110]
mov edx, dword [esp + 0x10c]
mov eax, dword [esp + 0x104]
inc dword [esp + 0x14]
push ebx
push 0
push ecx
mov ecx, dword [esp + 0x10c]
push edx
mov edx, dword [esp + 0x10c]
push edi
push eax
mov eax, dword [esp + 0x110]
push ecx
push edx
push eax
add esi, ebp
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
je 0x43e210
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0
ret
mov ecx, dword [esp + 0x10c]
push ecx
push esi
mov ecx, edi
mov eax, ebp
call fcn.0043cd10
add esp, 8
test eax, eax
je 0x4400d7
add esi, ebp
jmp 0x43cdf0
mov cl, byte [ebx + 0x21]
lea edx, [ebx + 1]
add ebx, 0x21
movzx eax, cl
mov dword [esp + 0x20], edx
lea edx, [eax - 0x46]
mov dword [esp + 0xf8], ebx
cmp edx, 7
ja case.default.0x43e2df
movzx edx, byte [edx + 0x4409a8]
jmp dword [edx*4 + 0x4409a0]
movsx ebx, byte [eax + 0x46cbe2]
inc dword [esp + 0xf8]
movsx ebp, byte [eax + 0x46cbda]
add eax, 0xffffffba
mov ecx, eax
and ecx, 1
mov dword [esp + 0x18], ecx
test ebx, ebx
jne 0x43e359
mov ebx, SysReAllocString
jmp 0x43e359
xor eax, eax
cmp cl, 0x4d
sete al
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0xf8]
movzx ebp, byte [eax + 1]
movzx ebx, byte [eax + 3]
movzx ecx, byte [eax + 2]
movzx edx, byte [eax + 4]
shl ebp, 8
shl ebx, 8
or ebp, ecx
or ebx, edx
jne 0x43e346
mov ebx, SysReAllocString
add eax, 5
mov dword [esp + 0xf8], eax
jmp 0x43e359
mov ebx, 1
mov ebp, ebx
cmp ebp, 1
mov dword [esp + 0x14], 1
jl 0x43e39e
cmp esi, dword [edi + 0x6c]
jae 0x4400f0
movzx eax, byte [esi]
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [esp + 0x20]
shr eax, 3
mov al, byte [eax + ecx]
inc esi
test al, dl
je 0x43fad4
mov eax, dword [esp + 0x14]
inc eax
cmp eax, ebp
mov dword [esp + 0x14], eax
jle 0x43e366
cmp ebp, ebx
je 0x43cdf0
cmp dword [esp + 0x18], 0
je 0x44010c
mov eax, dword [esp + 0x118]
mov ecx, dword [esp + 0x10c]
mov edx, dword [esp + 0x104]
inc eax
push eax
push 0
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x118]
push eax
mov eax, dword [esp + 0x10c]
push ecx
mov ecx, dword [esp + 0x10c]
push edi
push edx
mov edx, dword [esp + 0x110]
push eax
push ecx
push edx
push esi
mov dword [esp + 0x3c], ebp
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
cmp dword [esp + 0x14], ebx
jge case.0x43ec97.14
cmp esi, dword [edi + 0x6c]
jae 0x440100
movzx ebp, byte [esi]
mov ecx, ebp
and ecx, 7
mov eax, 1
shl eax, cl
mov ecx, dword [esp + 0x20]
shr ebp, 3
mov dl, byte [ecx + ebp]
inc esi
test dl, al
je case.0x43ec97.14
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x110]
mov edx, dword [esp + 0x10c]
inc dword [esp + 0x14]
push eax
mov eax, dword [esp + 0x108]
push 0
push ecx
mov ecx, dword [esp + 0x10c]
push edx
mov edx, dword [esp + 0x10c]
push edi
push eax
mov eax, dword [esp + 0x110]
push ecx
push edx
push eax
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
je 0x43e406
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0
ret
mov ecx, dword [edi + 0x6c]
sub ecx, esi
cmp ecx, 1
jl 0x4401f0
mov dl, byte [esi]
inc esi
cmp byte [ebx + 1], dl
jne case.0x43ec97.14
add ebx, 2
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
mov eax, dword [edi + 0x6c]
sub eax, esi
cmp eax, 1
jl 0x4401f0
movzx edx, byte [esi]
mov eax, dword [edi + 0x30]
movzx ecx, byte [ebx + 1]
mov dl, byte [edx + eax]
inc esi
cmp byte [ecx + eax], dl
jne case.0x43ec97.14
add ebx, 2
mov dword [esp + 0xf8], ebx
jmp 0x43cdf0
movzx ebp, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ebp, 8
or ebp, eax
mov eax, ebp
add ebx, 3
jmp 0x43e57c
mov dword [esp + 0x1c], 1
movzx ebp, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl ebp, 8
or ebp, edx
xor edx, edx
xor eax, eax
cmp cl, 0x26
sete dl
add ebx, 3
mov dword [esp + 0x18], edx
jmp 0x43e57c
xor eax, eax
mov dword [esp + 0x1c], 1
inc ebx
jmp 0x43e577
mov eax, 1
mov dword [esp + 0x1c], eax
add ebx, eax
jmp 0x43e577
mov ebp, 1
xor eax, eax
mov dword [esp + 0x1c], ebp
add ebx, ebp
jmp 0x43e57c
mov ecx, dword [esp + 0x20]
movsx ebp, byte [ecx + 0x46cc09]
add ecx, 0xffffffe1
mov eax, ecx
and eax, 1
inc ebx
mov dword [esp + 0x18], eax
movsx eax, byte [ecx + 0x46cc20]
test ebp, ebp
jne 0x43e57c
mov ebp, SysReAllocString
movzx edx, byte [ebx]
inc ebx
test byte [esp + 0x10c], 1
mov dword [esp + 0x10], edx
mov dword [esp + 0xf8], ebx
je 0x43e6a9
mov ecx, dword [edi + 0x30]
movzx ecx, byte [edx + ecx]
mov dword [esp + 0x10], ecx
mov ecx, 1
cmp eax, ecx
jl 0x43e5d7
lea ecx, [ecx]
cmp esi, dword [edi + 0x6c]
jae 0x440100
movzx ebx, byte [esi]
mov edx, dword [edi + 0x30]
movzx ebx, byte [ebx + edx]
mov edx, dword [esp + 0x10]
inc esi
cmp edx, ebx
jne case.0x43ec97.14
inc ecx
cmp ecx, eax
jle 0x43e5b0
jmp 0x43e5db
mov edx, dword [esp + 0x10]
cmp eax, ebp
je 0x43cdf0
cmp dword [esp + 0x18], 0
jne 0x440200
cmp eax, ebp
mov dword [esp + 0x18], esi
jge 0x43e631
cmp esi, dword [edi + 0x6c]
jae 0x43e611
movzx ebx, byte [esi]
mov ecx, dword [edi + 0x30]
movzx ecx, byte [ebx + ecx]
cmp edx, ecx
jne 0x43e631
inc eax
inc esi
cmp eax, ebp
jl 0x43e5f6
jmp 0x43e631
mov eax, dword [edi + 0x7c]
test eax, eax
je 0x43e631
cmp esi, dword [esp + 0xfc]
jbe 0x43e631
cmp eax, 1
mov dword [edi + 0x5c], 1
jg 0x43ff9c
cmp dword [esp + 0x1c], 0
jne 0x43cdf0
mov ebx, dword [esp + 0x100]
cmp esi, dword [esp + 0x18]
jb 0x43e696
mov ebp, dword [esp + 0x118]
inc ebp
mov ecx, dword [esp + 0x110]
mov edx, dword [esp + 0x10c]
mov eax, dword [esp + 0x104]
push ebp
push 0
push ecx
mov ecx, dword [esp + 0x108]
push edx
mov edx, dword [esp + 0x108]
push edi
push eax
push ebx
push ecx
push edx
push esi
call fcn.0043cd80
add esp, 0x28
dec esi
test eax, eax
jne 0x4407de
cmp esi, dword [esp + 0x18]
jae 0x43e651
mov dword [edi + 0x9c], ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xe0
ret
mov ecx, 1
cmp eax, ecx
jl 0x43e6d0
mov edx, dword [edi + 0x6c]
cmp esi, edx
jae 0x4400f0
movzx ebx, byte [esi]
inc esi
cmp dword [esp + 0x10], ebx
jne 0x43fad4
inc ecx
cmp ecx, eax
jle 0x43e6b5
cmp eax, ebp
je 0x43cdf0
cmp dword [esp + 0x18], 0
jne 0x4402c9
cmp eax, ebp
mov edx, esi
mov dword [esp + 0x18], edx
jge 0x43e725
mov ecx, dword [edi + 0x6c]
cmp esi, ecx
jae 0x43e705
movzx ebx, byte [esi]
cmp dword [esp + 0x10], ebx
jne 0x43e725
inc eax
inc esi
cmp eax, ebp
jl 0x43e6f0
jmp 0x43e725
mov eax, dword [edi + 0x7c]
test eax, eax
je 0x43e725
cmp esi, dword [esp + 0xfc]
jbe 0x43e725
cmp eax, 1
mov dword [edi + 0x5c], 1
jg 0x43ffea
cmp dword [esp + 0x1c], 0
jne 0x43cdf0
mov ebx, dword [esp + 0x100]
cmp esi, edx
jb 0x43e795
mov ebp, dword [esp + 0x118]
inc ebp
jmp 0x43e750
mov eax, dword [esp + 0x110]
mov ecx, dword [esp + 0x10c]
mov edx, dword [esp + 0x104]
push ebp
push 0
push eax
mov eax, dword [esp + 0x108]
push ecx
mov ecx, dword [esp + 0x108]
push edi
push edx
push ebx
push eax
push ecx
push esi
call fcn.0043cd80
add esp, 0x28
dec esi
test eax, eax
jne 0x4407de
cmp esi, dword [esp + 0x18]
jae 0x43e750
mov dword [edi + 0x9c], ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xe0
ret
cmp esi, dword [edi + 0x6c]
jae 0x4401f0
movzx ecx, byte [esi]
movzx edx, byte [ebx + 1]
inc ebx
inc ebx
inc esi
test byte [esp + 0x10c], 1
mov dword [esp + 0xf8], ebx
je 0x43e7e0
mov eax, dword [edi + 0x30]
mov cl, byte [ecx + eax]
cmp byte [edx + eax], cl
jne 0x43cdf0
jmp case.0x43ec97.14
cmp edx, ecx
jne 0x43cdf0
mov edx, dword [esp + 0x100]
mov dword [edi + 0x9c], edx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xe0
ret
movzx ebp, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ebp, 8
or ebp, eax
mov eax, ebp
add ebx, 3
jmp 0x43e8a9
movzx ebp, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl ebp, 8
or ebp, edx
xor edx, edx
xor eax, eax
cmp cl, 0x33
sete dl
add ebx, 3
mov dword [esp + 0x18], edx
jmp 0x43e8a9
xor eax, eax
mov dword [esp + 0x1c], 1
inc ebx
jmp 0x43e8a4
mov eax, 1
mov dword [esp + 0x1c], eax
add ebx, eax
jmp 0x43e8a4
mov ebp, 1
xor eax, eax
mov dword [esp + 0x1c], ebp
add ebx, ebp
jmp 0x43e8a9
movzx ebp, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl ebp, 8
xor eax, eax
or ebp, ecx
mov dword [esp + 0x1c], 1
add ebx, 3
jmp 0x43e8a9
mov ecx, dword [esp + 0x20]
movsx ebp, byte [ecx + 0x46cbfc]
add ecx, 0xffffffd4
mov eax, ecx
and eax, 1
inc ebx
mov dword [esp + 0x18], eax
movsx eax, byte [ecx + 0x46cc20]
test ebp, ebp
jne 0x43e8a9
mov ebp, SysReAllocString
movzx edx, byte [ebx]
inc ebx
test byte [esp + 0x10c], 1
mov dword [esp + 0x10], edx
mov dword [esp + 0xf8], ebx
je 0x43e9d9
mov ecx, dword [edi + 0x30]
movzx edx, byte [edx + ecx]
mov ecx, 1
cmp eax, ecx
mov dword [esp + 0x10], edx
jl 0x43e907
lea ebx, [ebx]
cmp esi, dword [edi + 0x6c]
jae 0x4400f0
movzx ebx, byte [esi]
mov edx, dword [edi + 0x30]
movzx ebx, byte [ebx + edx]
mov edx, dword [esp + 0x10]
inc esi
cmp edx, ebx
je 0x43fad4
inc ecx
cmp ecx, eax
jle 0x43e8e0
jmp 0x43e90b
mov edx, dword [esp + 0x10]
cmp eax, ebp
je 0x43cdf0
cmp dword [esp + 0x18], 0
jne 0x440391
cmp eax, ebp
mov dword [esp + 0x18], esi
jge 0x43e961
cmp esi, dword [edi + 0x6c]
jae 0x43e941
movzx ebx, byte [esi]
mov ecx, dword [edi + 0x30]
movzx ecx, byte [ebx + ecx]
cmp edx, ecx
je 0x43e961
inc eax
inc esi
cmp eax, ebp
jl 0x43e926
jmp 0x43e961
mov eax, dword [edi + 0x7c]
test eax, eax
je 0x43e961
cmp esi, dword [esp + 0xfc]
jbe 0x43e961
cmp eax, 1
mov dword [edi + 0x5c], 1
jg 0x43fec4
cmp dword [esp + 0x1c], 0
jne 0x43cdf0
mov ebx, dword [esp + 0x100]
cmp esi, dword [esp + 0x18]
jb 0x43e9c6
mov ebp, dword [esp + 0x118]
inc ebp
mov edx, dword [esp + 0x110]
mov eax, dword [esp + 0x10c]
mov ecx, dword [esp + 0x104]
push ebp
push 0
push edx
mov edx, dword [esp + 0x108]
push eax
mov eax, dword [esp + 0x108]
push edi
push ecx
push ebx
push edx
push eax
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
dec esi
cmp esi, dword [esp + 0x18]
jae 0x43e981
mov dword [edi + 0x9c], ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xe0
ret
mov ecx, 1
cmp eax, ecx
jl 0x43ea00
mov edx, dword [edi + 0x6c]
cmp esi, edx
jae 0x43fe9c
movzx ebx, byte [esi]
inc esi
cmp dword [esp + 0x10], ebx
je 0x4400bd
inc ecx
cmp ecx, eax
jle 0x43e9e5
cmp eax, ebp
je 0x43cdf0
cmp dword [esp + 0x18], 0
jne 0x44045a
cmp eax, ebp
mov edx, esi
mov dword [esp + 0x18], edx
jge 0x43ea55
mov ecx, dword [edi + 0x6c]
cmp esi, ecx
jae 0x43ea35
movzx ebx, byte [esi]
cmp dword [esp + 0x10], ebx
je 0x43ea55
inc eax
inc esi
cmp eax, ebp
jl 0x43ea20
jmp 0x43ea55
mov eax, dword [edi + 0x7c]
test eax, eax
je 0x43ea55
cmp esi, dword [esp + 0xfc]
jbe 0x43ea55
cmp eax, 1
mov dword [edi + 0x5c], 1
jg 0x43ff9c
cmp dword [esp + 0x1c], 0
jne 0x43cdf0
mov ebx, dword [esp + 0x100]
cmp esi, edx
jb 0x43eac5
mov ebp, dword [esp + 0x118]
inc ebp
jmp 0x43ea80
mov ecx, dword [esp + 0x110]
mov edx, dword [esp + 0x10c]
mov eax, dword [esp + 0x104]
push ebp
push 0
push ecx
mov ecx, dword [esp + 0x108]
push edx
mov edx, dword [esp + 0x108]
push edi
push eax
push ebx
push ecx
push edx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
dec esi
cmp esi, dword [esp + 0x18]
jae 0x43ea80
mov dword [edi + 0x9c], ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xe0
ret
movzx ebp, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl ebp, 8
or ebp, edx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x18], 1
add ebx, 3
jmp 0x43eb9f
movzx eax, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl eax, 8
or eax, edx
mov dword [esp + 0x10], eax
xor eax, eax
xor ebp, ebp
cmp cl, 0x40
sete al
add ebx, 3
mov dword [esp + 0x18], eax
jmp 0x43eb9f
xor ebp, ebp
mov dword [esp + 0x1c], 1
inc ebx
jmp 0x43eb97
mov ebp, 1
mov dword [esp + 0x1c], ebp
add ebx, ebp
jmp 0x43eb97
mov eax, 1
xor ebp, ebp
mov dword [esp + 0x1c], eax
mov dword [esp + 0x10], eax
add ebx, eax
jmp 0x43eb9f
movzx eax, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl eax, 8
or eax, ecx
xor ebp, ebp
mov dword [esp + 0x1c], 1
mov dword [esp + 0x10], eax
add ebx, 3
jmp 0x43eb9f
mov eax, dword [esp + 0x20]
movsx ebp, byte [eax + 0x46cbe7]
add eax, 0xffffffc7
mov ecx, eax
movsx eax, byte [eax + 0x46cc28]
and ecx, 1
inc ebx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], eax
test eax, eax
jne 0x43eb9f
mov dword [esp + 0x10], SysReAllocStringLen
movzx eax, byte [ebx]
mov ecx, 1
add ebx, ecx
mov dword [esp + 0x20], eax
mov dword [esp + 0xf8], ebx
test ebp, ebp
jle 0x43eed3
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x44064b.15
jmp dword [eax*4 + 0x4409b0]
cmp ebp, ecx
mov dword [esp + 0x14], ecx
jl 0x43eed3
jmp 0x43ebe0
mov eax, dword [edi + 0x6c]
cmp esi, eax
jae 0x4400f0
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x43ec0d
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.004473e0
add esp, 0x14
test eax, eax
jne 0x43fad4
jmp 0x43ec32
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x43ec32
mov al, byte [esi]
cmp al, byte [edi + 0x2c]
jne 0x43ec32
cmp ecx, 1
je 0x43fad4
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x2d]
je 0x43fad4
mov eax, dword [esp + 0x14]
inc eax
inc esi
cmp eax, ebp
mov dword [esp + 0x14], eax
jle 0x43ebe0
jmp 0x43eed3
mov edx, dword [edi + 0x6c]
sub edx, ebp
cmp esi, edx
ja 0x440521
add esi, ebp
jmp 0x43eed3
mov eax, dword [edi + 0x6c]
sub eax, ebp
cmp esi, eax
ja 0x440543
add esi, ebp
jmp 0x43eed3
cmp ebp, ecx
jl 0x43eed3
mov edx, dword [edi + 0x6c]
cmp esi, edx
jae 0x43fe9c
movzx eax, byte [esi]
sub eax, 0xa
inc esi
cmp eax, 0x7b
ja case.0x43ec97.14
movzx eax, byte [eax + 0x440a00]
jmp dword [eax*4 + 0x4409f0]
cmp esi, edx
jae case.0x43ec97.10
cmp byte [esi], 0xa
jne case.0x43ec97.10
inc esi
jmp case.0x43ec97.10
cmp dword [edi + 0x60], 0
jne 0x4400bd
inc ecx
cmp ecx, ebp
jle 0x43ec78
jmp 0x43eed3
cmp ebp, ecx
jl 0x43eed3
mov edx, dword [edi + 0x6c]
lea esp, [esp]
cmp esi, edx
jae 0x440100
movzx eax, byte [esi]
inc esi
cmp eax, 9
je case.0x43ec97.14
cmp eax, 0x20
je case.0x43ec97.14
cmp eax, 0xa0
je case.0x43ec97.14
inc ecx
cmp ecx, ebp
jle 0x43ecd0
jmp 0x43eed3
cmp ebp, ecx
jl 0x43eed3
mov edx, dword [edi + 0x6c]
mov edi, edi
cmp esi, edx
jae 0x440100
movzx eax, byte [esi]
inc esi
cmp eax, 9
je 0x43ed31
cmp eax, 0x20
je 0x43ed31
cmp eax, 0xa0
jne case.0x43ec97.14
inc ecx
cmp ecx, ebp
jle 0x43ed10
jmp 0x43eed3
cmp ebp, ecx
jl 0x43eed3
mov edx, dword [edi + 0x6c]
cmp esi, edx
jae 0x440100
movzx eax, byte [esi]
inc esi
cmp eax, 0xa
jl 0x43ed6b
cmp eax, 0xd
jle case.0x43ec97.14
cmp eax, 0x85
je case.0x43ec97.14
inc ecx
cmp ecx, ebp
jle 0x43ed46
jmp 0x43eed3
cmp ebp, ecx
jl 0x43eed3
mov edx, dword [edi + 0x6c]
cmp esi, edx
jae 0x440100
movzx eax, byte [esi]
inc esi
cmp eax, 0xa
jl case.0x43ec97.14
cmp eax, 0xd
jle 0x43eda5
cmp eax, 0x85
jne case.0x43ec97.14
inc ecx
cmp ecx, ebp
jle 0x43ed80
jmp 0x43eed3
cmp ebp, ecx
mov eax, ecx
jl 0x43eed3
lea esp, [esp]
cmp esi, dword [edi + 0x6c]
jae 0x440100
movzx ecx, byte [esi]
mov edx, dword [edi + 0x34]
mov cl, byte [ecx + edx]
and cl, 4
inc esi
test cl, cl
jne case.0x43ec97.14
inc eax
cmp eax, ebp
jle 0x43edc0
jmp 0x43eed3
cmp ebp, ecx
mov eax, ecx
jl 0x43eed3
cmp esi, dword [edi + 0x6c]
jae 0x440100
movzx edx, byte [esi]
mov ecx, dword [edi + 0x34]
mov dl, byte [edx + ecx]
and dl, 4
inc esi
test dl, dl
je case.0x43ec97.14
inc eax
cmp eax, ebp
jle 0x43edf2
jmp 0x43eed3
cmp ebp, ecx
mov eax, ecx
jl 0x43eed3
cmp esi, dword [edi + 0x6c]
jae 0x440100
movzx ecx, byte [esi]
mov edx, dword [edi + 0x34]
mov cl, byte [ecx + edx]
and cl, 1
inc esi
test cl, cl
jne case.0x43ec97.14
inc eax
cmp eax, ebp
jle 0x43ee24
jmp 0x43eed3
cmp ebp, ecx
mov eax, ecx
jl 0x43eed3
cmp esi, dword [edi + 0x6c]
jae 0x440100
movzx edx, byte [esi]
mov ecx, dword [edi + 0x34]
mov dl, byte [edx + ecx]
and dl, 1
inc esi
test dl, dl
je case.0x43ec97.14
inc eax
cmp eax, ebp
jle 0x43ee56
jmp 0x43eed3
cmp ebp, ecx
mov eax, ecx
jl 0x43eed3
cmp esi, dword [edi + 0x6c]
jae 0x440100
movzx ecx, byte [esi]
mov edx, dword [edi + 0x34]
mov cl, byte [ecx + edx]
and cl, 0x10
inc esi
test cl, cl
jne case.0x43ec97.14
inc eax
cmp eax, ebp
jle 0x43ee81
jmp 0x43eed3
cmp ebp, ecx
mov eax, ecx
jl 0x43eed3
lea esp, [esp]
cmp esi, dword [edi + 0x6c]
jae 0x440100
movzx edx, byte [esi]
mov ecx, dword [edi + 0x34]
mov dl, byte [edx + ecx]
and dl, 0x10
inc esi
test dl, dl
je case.0x43ec97.14
inc eax
cmp eax, ebp
jle 0x43eeb0
mov edx, dword [esp + 0x10]
cmp ebp, edx
je 0x43cdf0
cmp dword [esp + 0x18], 0
jne 0x440575
mov eax, dword [esp + 0x20]
add eax, 0xfffffffa
mov dword [esp + 0x18], esi
cmp eax, 0xf
ja case.0x44064b.15
jmp dword [eax*4 + 0x440a7c]
cmp ebp, edx
jge 0x43f25d
lea ecx, [ecx]
mov eax, dword [edi + 0x6c]
cmp esi, eax
jae 0x43f23d
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x43ef41
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.004473e0
add esp, 0x14
test eax, eax
jne 0x43f25d
mov edx, dword [esp + 0x10]
jmp 0x43ef66
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x43ef66
mov al, byte [esi]
cmp al, byte [edi + 0x2c]
jne 0x43ef66
cmp ecx, 1
je 0x43f25d
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x2d]
je 0x43f25d
inc ebp
inc esi
cmp ebp, edx
jl 0x43ef10
jmp 0x43f25d
mov eax, dword [edi + 0x6c]
sub edx, ebp
mov ecx, edx
mov edx, eax
sub edx, esi
cmp ecx, edx
jbe 0x43efaf
mov esi, eax
mov eax, dword [edi + 0x7c]
test eax, eax
je 0x43f25d
cmp esi, dword [esp + 0xfc]
jbe 0x43f25d
cmp eax, 1
mov dword [edi + 0x5c], 1
jg 0x43ff9c
jmp 0x43f25d
add esi, ecx
jmp 0x43f25d
cmp ebp, edx
jge 0x43f25d
mov ecx, dword [edi + 0x6c]
cmp esi, ecx
jae 0x43f1fc
movzx eax, byte [esi]
cmp eax, 0xd
jne 0x43efe1
inc esi
cmp esi, ecx
jae 0x43f25d
cmp byte [esi], 0xa
jne 0x43f006
jmp 0x43f005
cmp eax, 0xa
je 0x43f005
cmp dword [edi + 0x60], 0
jne 0x43f25d
cmp eax, 0xb
je 0x43f005
cmp eax, 0xc
je 0x43f005
cmp eax, 0x85
jne 0x43f25d
inc esi
inc ebp
cmp ebp, edx
jl 0x43efc1
jmp 0x43f25d
cmp ebp, edx
jge 0x43f25d
mov ecx, dword [edi + 0x6c]
jmp 0x43f020
cmp esi, ecx
jae 0x43f23d
movzx eax, byte [esi]
cmp eax, 9
je 0x43f25d
cmp eax, 0x20
je 0x43f25d
cmp eax, 0xa0
je 0x43f25d
inc ebp
inc esi
cmp ebp, edx
jl 0x43f020
jmp 0x43f25d
cmp ebp, edx
jge 0x43f25d
mov ecx, dword [edi + 0x6c]
mov edi, edi
cmp esi, ecx
jae 0x43ef82
movzx eax, byte [esi]
cmp eax, 9
je 0x43f080
cmp eax, 0x20
je 0x43f080
cmp eax, 0xa0
jne 0x43f25d
inc ebp
inc esi
cmp ebp, edx
jl 0x43f060
jmp 0x43f25d
cmp ebp, edx
jge 0x43f25d
mov ecx, dword [edi + 0x6c]
cmp esi, ecx
jae 0x43f1fc
movzx eax, byte [esi]
cmp eax, 0xa
je 0x43f25d
cmp eax, 0xb
je 0x43f25d
cmp eax, 0xc
je 0x43f25d
cmp eax, 0xd
je 0x43f25d
cmp eax, 0x85
je 0x43f25d
inc ebp
inc esi
cmp ebp, edx
jl 0x43f096
jmp 0x43f25d
cmp ebp, edx
jge 0x43f25d
mov ecx, dword [edi + 0x6c]
cmp esi, ecx
jae 0x43f23d
movzx eax, byte [esi]
cmp eax, 0xa
je 0x43f110
cmp eax, 0xb
je 0x43f110
cmp eax, 0xc
je 0x43f110
cmp eax, 0xd
je 0x43f110
cmp eax, 0x85
jne 0x43f25d
inc ebp
inc esi
cmp ebp, edx
jl 0x43f0e6
jmp 0x43f25d
cmp ebp, edx
jge 0x43f25d
mov eax, dword [edi + 0x6c]
cmp esi, eax
jae 0x43ef82
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x34]
test byte [ecx + ebx], 4
jne 0x43f25d
inc ebp
inc esi
cmp ebp, edx
jl 0x43f126
jmp 0x43f25d
cmp ebp, edx
jge 0x43f25d
mov eax, dword [edi + 0x6c]
cmp esi, eax
jae 0x43f1fc
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x34]
test byte [ecx + ebx], 4
je 0x43f25d
inc ebp
inc esi
cmp ebp, edx
jl 0x43f154
jmp 0x43f25d
cmp ebp, edx
jge 0x43f25d
mov eax, dword [edi + 0x6c]
cmp esi, eax
jae 0x43f23d
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x34]
test byte [ecx + ebx], 1
jne 0x43f25d
inc ebp
inc esi
cmp ebp, edx
jl 0x43f182
jmp 0x43f25d
cmp ebp, edx
jge 0x43f25d
mov eax, dword [edi + 0x6c]
cmp esi, eax
jae 0x43ef82
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x34]
test byte [ecx + ebx], 1
je 0x43f25d
inc ebp
inc esi
cmp ebp, edx
jl 0x43f1b0
jmp 0x43f25d
cmp ebp, edx
jge 0x43f25d
mov eax, dword [edi + 0x6c]
mov edi, edi
cmp esi, eax
jae 0x43f1fc
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x34]
test byte [ecx + ebx], 0x10
jne 0x43f25d
inc ebp
inc esi
cmp ebp, edx
jl 0x43f1e0
jmp 0x43f25d
mov eax, dword [edi + 0x7c]
test eax, eax
je 0x43f25d
cmp esi, dword [esp + 0xfc]
jbe 0x43f25d
cmp eax, 1
mov dword [edi + 0x5c], 1
jg 0x43fec4
jmp 0x43f25d
cmp ebp, edx
jge 0x43f25d
mov eax, dword [edi + 0x6c]
cmp esi, eax
jae 0x43f23d
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x34]
test byte [ecx + ebx], 0x10
je 0x43f25d
inc ebp
inc esi
cmp ebp, edx
jl 0x43f225
jmp 0x43f25d
mov eax, dword [edi + 0x7c]
test eax, eax
je 0x43f25d
cmp esi, dword [esp + 0xfc]
jbe 0x43f25d
cmp eax, 1
mov dword [edi + 0x5c], 1
jg 0x43ffea
cmp dword [esp + 0x1c], 0
jne 0x43cdf0
mov ebx, dword [esp + 0x100]
cmp esi, dword [esp + 0x18]
jb 0x43f2c5
mov ebp, dword [esp + 0x118]
inc ebp
lea ecx, [ecx]
mov eax, dword [esp + 0x110]
mov ecx, dword [esp + 0x10c]
mov edx, dword [esp + 0x104]
push ebp
push 0
push eax
mov eax, dword [esp + 0x108]
push ecx
mov ecx, dword [esp + 0x108]
push edi
push edx
push ebx
push eax
push ecx
push esi
call fcn.0043cd80
add esp, 0x28
dec esi
test eax, eax
jne 0x4407de
cmp esi, dword [esp + 0x18]
jae 0x43f280
mov dword [edi + 0x9c], ebx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xe0
ret
movzx edx, byte [ebx + 4]
movzx eax, byte [ebx + 5]
shl edx, 8
or edx, eax
cmp byte [ebx + edx + 3], 0x54
lea ebx, [ebx + edx + 3]
jne 0x43f304
movzx ecx, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl ecx, 8
or ecx, edx
add ebx, ecx
cmp byte [ebx], 0x54
je 0x43f2f0
add ebx, 3
cmp dword [esp + 0x20], 0x63
mov dword [esp + 0xf8], ebx
je 0x43fb57
mov ebx, dword [esp + 0x110]
jmp 0x43f5aa
mov eax, dword [esp + 0xf8]
movzx ebp, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ebp, 8
or ebp, eax
lea ebx, [ebp + ebp]
cmp ebx, dword [edi + 0x14]
jl 0x43f9b7
xor eax, eax
cmp dword [esp + 0x20], 0x61
mov ebx, dword [esp + 0x110]
setl al
dec eax
and eax, 2
mov dword [esp + 0x114], eax
mov eax, dword [esp + 0xf8]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
cmp byte [ecx + eax], 0x54
jne 0x43f41a
mov eax, dword [esp + 0x118]
inc eax
mov dword [esp + 0x1c], eax
lea esp, [esp]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x114]
mov eax, dword [esp + 0x10c]
mov ebp, dword [esp + 0xf8]
push ecx
mov ecx, dword [esp + 0x108]
push edx
mov edx, dword [esp + 0x108]
push ebx
push eax
mov eax, dword [esp + 0x10c]
push edi
push ecx
movzx ecx, byte [ebp]
push edx
movzx edx, byte [ecx + 0x46d9f8]
push eax
add edx, ebp
push edx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
je 0x43f3ec
cmp eax, 0xfffffc1e
jne 0x4407de
movzx eax, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
shl eax, 8
or eax, ecx
movzx edx, byte [ebp + eax + 1]
add ebp, eax
movzx eax, byte [ebp + 2]
shl edx, 8
or edx, eax
cmp byte [edx + ebp], 0x54
mov dword [esp + 0xf8], ebp
je 0x43f390
cmp dword [esp + 0x114], 0
jne 0x43faee
mov eax, dword [esp + 0xf8]
movzx ecx, byte [eax]
movzx edx, byte [ecx + 0x46d9f8]
add eax, edx
mov dword [esp + 0xf8], eax
jmp 0x43f5b5
cmp byte [ebp + 3], 0x19
lea ecx, [ebp + 3]
mov dword [esp + 0x24], ecx
jne 0x43f46b
mov edx, dword [esp + 0x10c]
movzx ecx, byte [ebp + 4]
and edx, 0xfffffff8
or ecx, edx
mov dword [esp + 0x10c], ecx
mov ecx, dword [esp + 0x118]
mov edx, dword [esp + 0x10c]
inc ecx
cmp byte [ebp], 0x57
push ecx
mov ecx, dword [esp + 0x100]
jne 0x43f4bd
push 0
push ebx
push edx
mov edx, dword [esp + 0x34]
push edi
push eax
mov eax, dword [esp + 0x118]
push eax
push ecx
push edx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
mov eax, dword [esp + 0x10]
mov dword [esp + 0xf8], eax
jmp 0x43f5aa
push 2
push ebx
push edx
mov edx, dword [esp + 0x20]
push edi
push eax
mov eax, dword [esp + 0x118]
push eax
push ecx
push edx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
mov eax, dword [esp + 0x24]
mov dword [esp + 0xf8], eax
jmp 0x43f5aa
mov edx, dword [esp + 0x10]
cmp byte [edx], 0x61
sbb eax, eax
and eax, 0xfffffffe
add eax, 2
mov dword [esp + 0x114], eax
mov eax, dword [esp + 0x118]
inc eax
cmp byte [ecx], 0x57
push eax
jne 0x43f569
mov ecx, dword [esp + 0x108]
mov edx, dword [esp + 0x104]
mov eax, dword [esp + 0x100]
push 0
push ebx
push ebp
push edi
push ecx
mov ecx, dword [esp + 0x110]
push edx
push eax
add ecx, 3
push ecx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
cmp dword [esp + 0x114], eax
jne 0x43fe20
mov edx, dword [esp + 0x10]
mov dword [esp + 0xf8], edx
jmp 0x43f5b5
mov ecx, dword [esp + 0x118]
mov edx, dword [esp + 0x108]
mov eax, dword [esp + 0x104]
push ecx
mov ecx, dword [esp + 0x104]
push ebx
push ebp
push edi
push edx
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
add dword [esp + 0xf8], 3
mov dword [esp + 0x114], 0
mov eax, dword [edi]
cmp eax, dword [edi + 4]
jb 0x43cdb0
inc dword [edi]
pop edi
pop esi
pop ebp
mov eax, 0xfffffff8
pop ebx
add esp, 0xe0
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffeb
pop ebx
add esp, 0xe0
ret
mov ecx, dword [esp + 0x118]
mov edx, dword [esp + 0x114]
mov eax, dword [esp + 0x110]
inc ecx
push ecx
mov ecx, dword [esp + 0x110]
push edx
mov edx, dword [esp + 0x10c]
push eax
mov eax, dword [esp + 0x108]
push ecx
movzx ecx, byte [ebx]
push edi
push edx
movzx edx, byte [ecx + 0x46d9f8]
lea ebp, [ebx + 2]
push ebp
push eax
movzx eax, byte [ebx + 1]
add edx, ebx
add eax, edx
push eax
push esi
call fcn.0043cd80
add esp, 0x28
cmp eax, 0xfffffc1d
jne 0x43f67c
mov edx, dword [edi + 0x70]
mov ecx, ebp
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x43f660
test bl, bl
je 0x43f65c
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x43f660
add ecx, 2
add edx, 2
test bl, bl
jne 0x43f640
xor ecx, ecx
jmp 0x43f665
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x43f67c
mov dword [edi + 0x70], esi
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1c
pop ebx
add esp, 0xe0
ret
cmp dword [edi + 0x9c], 0
jne 0x4407de
mov dword [edi + 0x9c], ebp
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0
ret
mov edx, dword [esp + 0x118]
mov eax, dword [esp + 0x114]
mov ecx, dword [esp + 0x110]
mov ebp, dword [esp + 0x100]
inc edx
push edx
mov edx, dword [esp + 0x110]
push eax
mov eax, dword [esp + 0x10c]
push ecx
mov ecx, dword [esp + 0x108]
push edx
movzx edx, byte [ebx]
push edi
push eax
movzx eax, byte [edx + 0x46d9f8]
push ebp
push ecx
add eax, ebx
push eax
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
mov dword [edi + 0x9c], ebp
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1a
pop ebx
add esp, 0xe0
ret
mov ecx, dword [esp + 0x118]
mov edx, dword [esp + 0x114]
mov eax, dword [esp + 0x110]
mov ebp, dword [esp + 0x100]
inc ecx
push ecx
mov ecx, dword [esp + 0x110]
push edx
mov edx, dword [esp + 0x10c]
push eax
mov eax, dword [esp + 0x108]
push ecx
movzx ecx, byte [ebx]
push edi
push edx
movzx edx, byte [ecx + 0x46d9f8]
push ebp
push eax
add edx, ebx
push edx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
mov dword [edi + 0x9c], ebp
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1b
pop ebx
add esp, 0xe0
ret
mov eax, dword [esp + 0x118]
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x110]
inc eax
push eax
mov eax, dword [esp + 0x110]
push ecx
mov ecx, dword [esp + 0x10c]
push edx
mov edx, dword [esp + 0x10c]
push eax
mov eax, dword [esp + 0x10c]
push edi
push ecx
movzx ecx, byte [ebx]
push edx
movzx edx, byte [ecx + 0x46d9f8]
push eax
movzx eax, byte [ebx + 1]
add edx, ebx
add eax, edx
push eax
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
add ebx, 2
mov dword [edi + 0x9c], ebx
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1b
pop ebx
add esp, 0xe0
ret
mov ecx, dword [esp + 0x118]
mov edx, dword [esp + 0x114]
mov eax, dword [esp + 0x110]
mov ebp, dword [esp + 0x100]
inc ecx
push ecx
mov ecx, dword [esp + 0x110]
push edx
mov edx, dword [esp + 0x10c]
push eax
mov eax, dword [esp + 0x108]
push ecx
movzx ecx, byte [ebx]
push edi
push edx
movzx edx, byte [ecx + 0x46d9f8]
push ebp
push eax
add edx, ebx
push edx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
mov dword [edi + 0x70], esi
mov dword [edi + 0x9c], ebp
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1c
pop ebx
add esp, 0xe0
ret
mov eax, dword [esp + 0x118]
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x110]
inc eax
push eax
mov eax, dword [esp + 0x110]
push ecx
mov ecx, dword [esp + 0x10c]
push edx
mov edx, dword [esp + 0x10c]
push eax
mov eax, dword [esp + 0x10c]
push edi
push ecx
movzx ecx, byte [ebx]
push edx
movzx edx, byte [ecx + 0x46d9f8]
push eax
movzx eax, byte [ebx + 1]
add edx, ebx
add eax, edx
push eax
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
add ebx, 2
mov dword [edi + 0x70], ebx
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1d
pop ebx
add esp, 0xe0
ret
mov ecx, dword [esp + 0x118]
mov edx, dword [esp + 0x114]
mov eax, dword [esp + 0x110]
mov ebp, dword [esp + 0x100]
inc ecx
push ecx
mov ecx, dword [esp + 0x110]
push edx
mov edx, dword [esp + 0x10c]
push eax
mov eax, dword [esp + 0x108]
push ecx
movzx ecx, byte [ebx]
push edi
push edx
movzx edx, byte [ecx + 0x46d9f8]
push ebp
push eax
add edx, ebx
push edx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
mov dword [edi + 0x9c], ebp
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1e
pop ebx
add esp, 0xe0
ret
mov eax, dword [esp + 0x118]
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x110]
inc eax
push eax
mov eax, dword [esp + 0x110]
push ecx
mov ecx, dword [esp + 0x10c]
push edx
mov edx, dword [esp + 0x10c]
push eax
mov eax, dword [esp + 0x10c]
push edi
push ecx
movzx ecx, byte [ebx]
push edx
movzx edx, byte [ecx + 0x46d9f8]
push eax
movzx eax, byte [ebx + 1]
add edx, ebx
add eax, edx
push eax
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
add ebx, 2
mov dword [edi + 0x9c], ebx
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1e
pop ebx
add esp, 0xe0
ret
mov eax, dword [edi + 0xc]
mov ecx, dword [eax + ebx*4]
mov edx, dword [eax + ebx*4 + 4]
mov dword [esp + 0x10], ecx
mov ecx, dword [edi + 0x10]
sub ecx, ebp
lea eax, [eax + ecx*4]
mov ecx, dword [edi + 0x84]
mov dword [esp + 0x18], edx
mov edx, dword [eax]
mov dword [esp + 0x14], edx
mov edx, esi
sub edx, dword [edi + 0x68]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x118]
mov dword [eax], edx
xor eax, eax
cmp dword [esp + 0x20], 0x62
setne al
dec eax
and eax, 2
inc ecx
mov dword [esp + 0x114], eax
mov dword [esp + 0x1c], ecx
lea esp, [esp]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x114]
mov ecx, dword [esp + 0x110]
push edx
mov edx, dword [esp + 0x110]
push eax
mov eax, dword [esp + 0x10c]
push ecx
mov ecx, dword [esp + 0x10c]
push edx
mov edx, dword [esp + 0x10c]
push edi
push eax
mov eax, dword [esp + 0x110]
push ecx
movzx ecx, byte [eax]
push edx
movzx edx, byte [ecx + 0x46d9f8]
add edx, eax
push edx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
je 0x43fa72
cmp eax, 0xfffffc1e
jne 0x4407de
mov ecx, dword [esp + 0x24]
mov dword [edi + 0x84], ecx
mov ecx, dword [esp + 0xf8]
movzx edx, byte [ecx + 1]
movzx ecx, byte [ecx + 2]
shl edx, 8
or edx, ecx
mov ecx, dword [esp + 0xf8]
add ecx, edx
cmp byte [ecx], 0x54
mov dword [esp + 0xf8], ecx
je 0x43fa10
mov edx, dword [edi + 0xc]
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
mov dword [edx + ebx*4], ecx
mov edx, dword [edi + 0xc]
mov ecx, dword [esp + 0x18]
mov dword [edx + ebx*4 + 4], ecx
mov edx, dword [edi + 0x10]
mov ecx, dword [edi + 0xc]
sub edx, ebp
mov dword [ecx + edx*4], esi
cmp eax, 0xfffffc1e
je 0x43fae1
mov edx, dword [esp + 0x100]
mov dword [edi + 0x9c], edx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xe0
ret
mov eax, dword [esp + 0x118]
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x10c]
inc eax
push eax
mov eax, dword [esp + 0x108]
push ecx
mov ecx, dword [esp + 0x104]
push ebx
mov ebx, dword [esp + 0x10c]
push edx
push edi
push eax
mov eax, dword [esp + 0x110]
movzx edx, byte [eax]
push ebx
push ecx
movzx ecx, byte [edx + 0x46d9f8]
add ecx, eax
push ecx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
mov dword [edi + 0x9c], ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0
ret
mov eax, dword [esp + 0x118]
mov ecx, dword [esp + 0x110]
mov edx, dword [esp + 0x10c]
inc eax
push eax
mov eax, dword [esp + 0x108]
push 2
push ecx
mov ecx, dword [esp + 0x10c]
push edx
mov edx, dword [esp + 0x10c]
push edi
push eax
push ecx
push edx
push ebx
push esi
call fcn.0043cd80
add esp, 0x28
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0
ret
mov eax, dword [esp + 0xfc]
cmp esi, eax
jne 0x43fbcc
cmp dword [edi + 0x54], 0
jne 0x43fad4
cmp dword [edi + 0x58], 0
je 0x43fbcc
mov ecx, dword [edi + 0x88]
add ecx, dword [edi + 0x68]
cmp eax, ecx
je 0x43fad4
mov ecx, dword [esp + 0x104]
mov edx, dword [esp + 0x100]
mov dword [edi + 0x70], eax
mov eax, dword [esp + 0x20]
mov dword [edi + 0x74], esi
neg eax
mov dword [edi + 0x80], ecx
mov dword [edi + 0x9c], edx
pop edi
sbb eax, eax
pop esi
and eax, 0xfffffc18
pop ebp
inc eax
pop ebx
add esp, 0xe0
ret
movzx ebp, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
mov eax, dword [edi + 0x64]
shl ebp, 8
or ebp, ecx
add ebp, eax
cmp ebp, eax
jne 0x43fc25
mov dword [esp + 0x2c], 0
jmp 0x43fc36
movzx edx, byte [ebp + 3]
movzx eax, byte [ebp + 4]
shl edx, 8
or edx, eax
mov dword [esp + 0x2c], edx
mov ecx, dword [edi + 0x94]
mov dword [esp + 0x28], ecx
mov ecx, dword [edi + 0x10]
add ebx, 3
cmp ecx, 0x1e
lea edx, [esp + 0x28]
mov dword [edi + 0x94], edx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x38], ecx
jg 0x43fc67
lea eax, [esp + 0x78]
mov dword [esp + 0x34], eax
jmp 0x43fc94
lea eax, [ecx*4]
push eax
call dword [0x47d8ec]
add esp, 4
mov dword [esp + 0x34], eax
test eax, eax
jne 0x43fc90
pop edi
pop esi
pop ebp
mov eax, 0xfffffffa
pop ebx
add esp, 0xe0
ret
mov ecx, dword [esp + 0x38]
mov edx, dword [edi + 0xc]
add ecx, ecx
add ecx, ecx
push ecx
push edx
push eax
call fcn.0044b450
mov eax, dword [esp + 0x110]
mov dword [esp + 0x48], eax
mov al, byte [ebp]
add esp, 0xc
cmp al, 0x61
sbb ecx, ecx
and ecx, 0xfffffffe
add ecx, 2
mov dword [esp + 0x114], ecx
mov ecx, dword [esp + 0x118]
inc ecx
mov dword [esp + 0x1c], ecx
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x114]
push edx
mov edx, dword [esp + 0x114]
push ecx
mov ecx, dword [esp + 0x114]
push edx
mov edx, dword [esp + 0x110]
push ecx
mov ecx, dword [esp + 0x110]
push edi
push edx
mov edx, dword [esp + 0x114]
push ecx
movzx eax, al
movzx ecx, byte [eax + 0x46d9f8]
push edx
add ecx, ebp
push ecx
push esi
call fcn.0043cd80
mov ebx, eax
add esp, 0x28
cmp ebx, 1
je 0x43fde3
cmp ebx, 0xfffffc19
je 0x43fde3
test ebx, ebx
je 0x43fd44
cmp ebx, 0xfffffc1e
jne 0x43fdc0
mov eax, dword [esp + 0x38]
lea edx, [esp + 0x28]
lea ecx, [eax*4]
mov eax, dword [edi + 0xc]
mov dword [edi + 0x94], edx
mov edx, dword [esp + 0x34]
push ecx
push edx
push eax
call fcn.0044b450
movzx ecx, byte [ebp + 1]
movzx edx, byte [ebp + 2]
shl ecx, 8
or ecx, edx
mov al, byte [ebp + ecx]
add ebp, ecx
add esp, 0xc
cmp al, 0x54
je 0x43fcd1
mov eax, dword [esp + 0x34]
mov edx, dword [esp + 0x28]
lea ecx, [esp + 0x78]
mov dword [edi + 0x94], edx
cmp eax, ecx
je 0x43fda6
push eax
call dword [0x47d8f0]
add esp, 4
mov edx, dword [esp + 0x100]
mov dword [edi + 0x9c], edx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xe0
ret
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0x78]
cmp eax, ecx
je 0x43fdd6
push eax
call dword [0x47d8f0]
add esp, 4
pop edi
pop esi
pop ebp
mov eax, ebx
pop ebx
add esp, 0xe0
ret
mov eax, dword [esp + 0x28]
mov dword [edi + 0x94], eax
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0x78]
cmp eax, ecx
je 0x43fe03
push eax
call dword [0x47d8f0]
add esp, 4
mov edx, dword [esp + 0x100]
mov dword [edi + 0x9c], edx
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0xe0
ret
mov eax, dword [esp + 0x118]
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x104]
inc eax
push eax
mov eax, dword [esp + 0x104]
push ecx
mov ecx, dword [esp + 0x104]
push ebx
push ebp
push edi
push edx
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
push esi
call fcn.0043cd80
add esp, 0x28
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0
ret
mov eax, dword [esp + 0x104]
mov ecx, dword [esp + 0xfc]
mov edx, dword [esp + 0x100]
mov dword [edi + 0x74], esi
mov dword [edi + 0x80], eax
mov dword [edi + 0x70], ecx
mov dword [edi + 0x9c], edx
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0xe0
ret
mov eax, dword [edi + 0x7c]
test eax, eax
je 0x43fad4
cmp esi, dword [esp + 0xfc]
jbe 0x43fad4
cmp eax, 1
mov dword [edi + 0x5c], 1
jle 0x43fad4
mov ecx, dword [esp + 0x100]
mov dword [edi + 0x9c], ecx
pop edi
pop esi
pop ebp
mov eax, 0xfffffff4
pop ebx
add esp, 0xe0
ret
mov eax, dword [edi + 0x7c]
cmp eax, edx
je case.0x43ec97.14
cmp esi, dword [esp + 0xfc]
jbe case.0x43ec97.14
cmp eax, 1
mov dword [edi + 0x5c], 1
jle case.0x43ec97.14
mov eax, dword [esp + 0x100]
mov dword [edi + 0x9c], eax
pop edi
pop esi
pop ebp
mov eax, 0xfffffff4
pop ebx
add esp, 0xe0
ret
mov eax, dword [edi + 0x7c]
cmp eax, edx
je 0x4400bd
cmp esi, dword [esp + 0xfc]
jbe 0x4400bd
cmp eax, 1
mov dword [edi + 0x5c], 1
jle 0x4400bd
mov edx, dword [esp + 0x100]
mov dword [edi + 0x9c], edx
pop edi
pop esi
pop ebp
mov eax, 0xfffffff4
pop ebx
add esp, 0xe0
ret
mov eax, dword [edi + 0x7c]
test eax, eax
je case.0x43ec97.14
cmp esi, dword [edi + 0x6c]
jb case.0x43ec97.14
cmp esi, dword [esp + 0xfc]
jbe case.0x43ec97.14
mov dword [edi + 0x5c], 1
cmp eax, 1
jle case.0x43ec97.14
mov eax, dword [esp + 0x100]
mov dword [edi + 0x9c], eax
pop edi
pop esi
pop ebp
mov eax, 0xfffffff4
pop ebx
add esp, 0xe0
ret
mov eax, dword [edi + 0x7c]
test eax, eax
je 0x4400bd
cmp esi, dword [edi + 0x6c]
jb 0x4400bd
cmp esi, dword [esp + 0xfc]
jbe 0x4400bd
mov dword [edi + 0x5c], 1
cmp eax, 1
jle 0x4400bd
mov edx, dword [esp + 0x100]
mov dword [edi + 0x9c], edx
pop edi
pop esi
pop ebp
mov eax, 0xfffffff4
pop ebx
add esp, 0xe0
ret
cmp ebx, eax
mov dword [esp + 0x18], esi
jge 0x440063
nop
mov ecx, dword [esp + 0x10c]
mov edx, dword [esp + 0x20]
push ecx
push esi
mov ecx, edi
mov eax, ebp
call fcn.0043cd10
add esp, 8
test eax, eax
je 0x440038
inc ebx
add esi, ebp
cmp ebx, dword [esp + 0x10]
jl 0x440010
jmp 0x440059
mov eax, dword [edi + 0x7c]
test eax, eax
je 0x440059
cmp esi, dword [edi + 0x6c]
jb 0x440059
cmp esi, dword [esp + 0xfc]
jbe 0x440059
cmp eax, 1
mov dword [edi + 0x5c], 1
jg 0x43ffea
cmp esi, dword [esp + 0x18]
jb 0x4400bd
mov ebx, dword [esp + 0x118]
inc ebx
jmp 0x440070
mov eax, dword [esp + 0x110]
mov ecx, dword [esp + 0x10c]
mov edx, dword [esp + 0x104]
push ebx
push 0
push eax
mov eax, dword [esp + 0x10c]
push ecx
mov ecx, dword [esp + 0x10c]
push edi
push edx
mov edx, dword [esp + 0x110]
push eax
push ecx
push edx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
sub esi, ebp
cmp esi, dword [esp + 0x18]
jae 0x440070
mov eax, dword [esp + 0x100]
mov dword [edi + 0x9c], eax
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xe0
ret
mov eax, dword [edi + 0x7c]
test eax, eax
je 0x43fad4
cmp esi, dword [edi + 0x6c]
jb 0x43fad4
jmp 0x43fea7
mov eax, dword [edi + 0x7c]
test eax, eax
je case.0x43ec97.14
jmp 0x43ff7f
mov eax, dword [edi + 0x7c]
test eax, eax
je 0x4400bd
jmp 0x43ffcd
cmp ebp, ebx
mov dword [esp + 0x18], esi
mov eax, ebp
jge 0x44016a
cmp esi, dword [edi + 0x6c]
jae 0x440140
movzx ebp, byte [esi]
mov ecx, ebp
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [esp + 0x20]
shr ebp, 3
mov cl, byte [ecx + ebp]
test cl, dl
je 0x440160
inc eax
inc esi
cmp eax, ebx
jl 0x440116
jmp 0x440160
mov eax, dword [edi + 0x7c]
test eax, eax
je 0x440160
cmp esi, dword [esp + 0xfc]
jbe 0x440160
cmp eax, 1
mov dword [edi + 0x5c], 1
jg 0x43ffea
cmp esi, dword [esp + 0x18]
jb 0x4401d6
mov ebx, dword [esp + 0x118]
mov ebp, dword [esp + 0x100]
inc ebx
lea esp, [esp]
mov eax, dword [esp + 0x110]
mov ecx, dword [esp + 0x10c]
mov edx, dword [esp + 0x104]
push ebx
push 0
push eax
mov eax, dword [esp + 0x108]
push ecx
mov ecx, dword [esp + 0x108]
push edi
push edx
push ebp
push eax
push ecx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
dec esi
cmp esi, dword [esp + 0x18]
jae 0x440180
mov dword [edi + 0x9c], ebp
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0
ret
mov ebp, dword [esp + 0x100]
mov dword [edi + 0x9c], ebp
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xe0
ret
mov eax, dword [edi + 0x7c]
cmp eax, edx
je 0x4400bd
jmp 0x43ffcd
mov ebx, dword [esp + 0x118]
mov edx, dword [esp + 0x110]
mov ecx, dword [esp + 0x104]
inc ebx
push ebx
push 0
push edx
mov edx, dword [esp + 0x10c]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x118]
push eax
mov eax, dword [esp + 0x10c]
push edi
push ecx
mov ecx, dword [esp + 0x110]
push edx
push eax
push ecx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
cmp dword [esp + 0x14], ebp
jge 0x43fad4
cmp esi, dword [edi + 0x6c]
jae 0x4400f0
movzx edx, byte [esi]
mov eax, dword [edi + 0x30]
movzx ecx, byte [edx + eax]
inc esi
cmp dword [esp + 0x10], ecx
jne 0x43fad4
mov edx, dword [esp + 0x110]
mov eax, dword [esp + 0x10c]
mov ecx, dword [esp + 0x104]
inc dword [esp + 0x14]
push ebx
push 0
push edx
mov edx, dword [esp + 0x10c]
push eax
mov eax, dword [esp + 0x10c]
push edi
push ecx
mov ecx, dword [esp + 0x110]
push edx
push eax
push ecx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
je 0x440251
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0
ret
mov ebx, dword [esp + 0x118]
mov ecx, dword [esp + 0x10c]
mov edx, dword [esp + 0x104]
inc ebx
push ebx
push 0
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x118]
push eax
mov eax, dword [esp + 0x10c]
push ecx
mov ecx, dword [esp + 0x10c]
push edi
push edx
mov edx, dword [esp + 0x110]
push eax
push ecx
push edx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
lea ebx, [ebx]
cmp dword [esp + 0x14], ebp
jge case.0x43ec97.14
cmp esi, dword [edi + 0x6c]
jae 0x440100
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x10], eax
jne case.0x43ec97.14
mov ecx, dword [esp + 0x110]
mov edx, dword [esp + 0x10c]
mov eax, dword [esp + 0x104]
inc dword [esp + 0x14]
push ebx
push 0
push ecx
mov ecx, dword [esp + 0x10c]
push edx
mov edx, dword [esp + 0x10c]
push edi
push eax
mov eax, dword [esp + 0x110]
push ecx
push edx
push eax
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
je 0x440320
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0
ret
mov ebx, dword [esp + 0x118]
mov ecx, dword [esp + 0x10c]
mov edx, dword [esp + 0x104]
inc ebx
push ebx
push 0
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x118]
push eax
mov eax, dword [esp + 0x10c]
push ecx
mov ecx, dword [esp + 0x10c]
push edi
push edx
mov edx, dword [esp + 0x110]
push eax
push ecx
push edx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
cmp dword [esp + 0x14], ebp
jge 0x4400bd
cmp esi, dword [edi + 0x6c]
jae 0x43fe9c
movzx eax, byte [esi]
mov ecx, dword [edi + 0x30]
movzx edx, byte [eax + ecx]
inc esi
cmp dword [esp + 0x10], edx
je 0x4400bd
mov eax, dword [esp + 0x110]
mov ecx, dword [esp + 0x10c]
mov edx, dword [esp + 0x104]
inc dword [esp + 0x14]
push ebx
push 0
push eax
mov eax, dword [esp + 0x10c]
push ecx
mov ecx, dword [esp + 0x10c]
push edi
push edx
mov edx, dword [esp + 0x110]
push eax
push ecx
push edx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
je 0x4403e2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0
ret
mov ebx, dword [esp + 0x118]
mov ecx, dword [esp + 0x110]
mov edx, dword [esp + 0x10c]
inc ebx
push ebx
push 0
push ecx
mov ecx, dword [esp + 0x10c]
push edx
mov edx, dword [esp + 0x10c]
push edi
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x118]
push eax
mov eax, dword [esp + 0x110]
push ecx
push edx
push eax
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
jmp 0x4404b0
cmp dword [esp + 0x14], ebp
jge 0x43fad4
cmp esi, dword [edi + 0x6c]
jae 0x4400f0
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x10], ecx
je 0x43fad4
mov edx, dword [esp + 0x110]
mov eax, dword [esp + 0x10c]
mov ecx, dword [esp + 0x104]
inc dword [esp + 0x14]
push ebx
push 0
push edx
mov edx, dword [esp + 0x10c]
push eax
mov eax, dword [esp + 0x10c]
push edi
push ecx
mov ecx, dword [esp + 0x110]
push edx
push eax
push ecx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
je 0x4404b0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0
ret
mov eax, dword [edi + 0x7c]
test eax, eax
je case.0x43ec97.14
cmp esi, dword [esp + 0xfc]
jbe case.0x43ec97.14
mov dword [edi + 0x5c], ecx
cmp eax, ecx
jmp 0x43ff96
mov eax, dword [edi + 0x7c]
test eax, eax
je 0x4400bd
cmp esi, dword [esp + 0xfc]
jbe 0x4400bd
mov dword [edi + 0x5c], ecx
cmp eax, ecx
jmp 0x43ffe4
pop edi
pop esi
pop ebp
mov eax, 0xfffffff2
pop ebx
add esp, 0xe0
ret
mov eax, dword [esp + 0x118]
mov edx, dword [esp + 0x110]
mov ecx, dword [esp + 0x104]
inc eax
push eax
push 0
push edx
mov edx, dword [esp + 0x108]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x118]
push eax
push edi
push ecx
mov dword [esp + 0x2c], ebp
mov ebp, dword [esp + 0x118]
push ebp
push edx
push ebx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
jne 0x4407de
jmp 0x4405d0
mov eax, dword [esp + 0x14]
cmp eax, dword [esp + 0x10]
jge case.0x440665.14
mov eax, dword [edi + 0x6c]
cmp esi, eax
jae 0x44079b
cmp dword [esp + 0x20], 0xc
jne 0x440637
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x440612
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.004473e0
add esp, 0x14
test eax, eax
jne case.0x440665.14
jmp 0x440637
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x440637
mov al, byte [esi]
cmp al, byte [edi + 0x2c]
jne 0x440637
cmp ecx, 1
je case.0x440665.14
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x2d]
je case.0x440665.14
mov ecx, dword [esp + 0x20]
movzx eax, byte [esi]
add ecx, 0xfffffffa
inc esi
cmp ecx, 0xf
ja case.0x44064b.15
jmp dword [ecx*4 + 0x440abc]
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x440665.14
movzx edx, byte [eax + 0x440b0c]
jmp dword [edx*4 + 0x440afc]
cmp esi, dword [edi + 0x6c]
jae case.0x44064b.12
cmp byte [esi], 0xa
jne case.0x44064b.12
inc esi
jmp case.0x44064b.12
cmp dword [edi + 0x60], 0
jne case.0x440665.14
jmp case.0x44064b.12
cmp eax, 9
je case.0x440665.14
cmp eax, 0x20
je case.0x440665.14
cmp eax, 0xa0
jmp 0x44074b
cmp eax, 9
je case.0x44064b.12
cmp eax, 0x20
je case.0x44064b.12
cmp eax, 0xa0
jne case.0x440665.14
jmp case.0x44064b.12
cmp eax, 0xa
jb case.0x44064b.12
cmp eax, 0xd
jbe case.0x440665.14
cmp eax, 0x85
jmp 0x44074b
cmp eax, 0xa
jb case.0x440665.14
cmp eax, 0xd
jbe case.0x44064b.12
cmp eax, 0x85
jne case.0x440665.14
jmp case.0x44064b.12
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 4
jne case.0x440665.14
jmp case.0x44064b.12
mov edx, dword [edi + 0x34]
test byte [eax + edx], 4
jmp 0x44074b
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 1
jne case.0x440665.14
jmp case.0x44064b.12
mov edx, dword [edi + 0x34]
test byte [eax + edx], 1
jmp 0x44074b
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 0x10
jne case.0x440665.14
jmp case.0x44064b.12
mov edx, dword [edi + 0x34]
test byte [eax + edx], 0x10
je case.0x440665.14
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x110]
mov edx, dword [esp + 0x10c]
inc dword [esp + 0x14]
push eax
mov eax, dword [esp + 0x108]
push 0
push ecx
mov ecx, dword [esp + 0x108]
push edx
push edi
push eax
push ebp
push ecx
push ebx
push esi
call fcn.0043cd80
add esp, 0x28
test eax, eax
je 0x4405d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0
ret
mov eax, dword [edi + 0x7c]
test eax, eax
je case.0x440665.14
cmp esi, dword [esp + 0xfc]
jbe case.0x440665.14
cmp eax, 1
mov dword [edi + 0x5c], 1
jle case.0x440665.14
mov dword [edi + 0x9c], ebp
pop edi
pop esi
pop ebp
mov eax, 0xfffffff4
pop ebx
add esp, 0xe0
ret
mov eax, 0xfffffffb
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0
ret