Function at 0x10023790
Capabilities:
Check http status code
Encode data using base64
Parse credit card information
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100b5803
mov eax, dword fs:[0]
push eax
sub esp, 0x1a0
push ebx
push esi
push edi
mov eax, dword [section..data]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x78], edx
mov eax, ecx
mov dword [ebp - 0x50], eax
mov ebx, dword [edx + 4]
xor esi, esi
mov edi, dword [edx]
mov byte [ebp - 0x1d], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x74], esi
mov byte [ebp - 0x15], 0
mov byte [ebp - 0x25], 0
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x6c], esi
mov dword [ebp - 0x9c], esi
mov dword [ebp - 0x98], esi
mov dword [ebp - 0x94], esi
mov dword [ebp - 4], esi
mov ecx, dword [eax + 0x14]
mov dword [ebp - 0x4c], esi
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x64], esi
test ecx, ecx
je 0x1002381d
mov al, byte [ecx + 0x88]
test al, al
je 0x1002381d
mov eax, dword [ecx + 0xc]
jmp 0x1002381f
xor eax, eax
mov eax, dword [eax + 0x1c]
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0
call fcn.1009bea0
mov dword [ebp - 0x48], eax
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x78]
cmp dword [ecx + 4], 0x40
mov eax, dword [ecx]
jb 0x100245ed
mov ecx, 0x5a4d
cmp word [eax], cx
jne 0x100245ed
mov ecx, dword [ebp - 0x50]
mov al, byte [ecx + 0x18]
test al, al
je 0x100245ed
mov ecx, dword [ecx + 0x14]
mov eax, dword [ecx + 0xc]
mov ecx, dword [ecx + 0x84]
mov edx, dword [eax + 0x10]
mov eax, dword [ecx + 0xc]
sub eax, dword [ecx + 8]
sar eax, 2
test ax, ax
je 0x100238ab
mov eax, dword [ecx + 0xc]
sub eax, dword [ecx + 8]
sar eax, 2
test eax, eax
je 0x1002389b
mov eax, dword [ecx + 8]
mov eax, dword [eax]
jmp 0x1002389d
xor eax, eax
mov eax, dword [eax]
cmp edx, dword [eax + 0xc]
jae 0x100238ab
mov edx, 0xffff
jmp 0x100238c6
push 1
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x54]
push eax
push edx
call fcn.10099ab0
test al, al
je 0x100245ed
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x50]
mov eax, dword [eax + 0x14]
test eax, eax
je 0x100238d8
mov ecx, dword [eax + 0x84]
jmp 0x100238da
xor ecx, ecx
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x40]
push eax
push edx
call fcn.10097c50
test al, al
je 0x100245ed
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x124]
mov dword [ebp - 0x40], 0
mov eax, dword [eax]
push eax
push ebx
push edi
mov dword [ebp - 0x68], eax
call fcn.1001d150
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x68]
mov ebx, edx
lea eax, [ecx - 6]
mov dword [ebp - 0x58], eax
cmp edx, eax
jae 0x10024091
xor eax, eax
cmp eax, 0x2328
ja 0x1002408e
add edx, 0x2328
cmp ebx, edx
jae 0x1002408e
mov dword [ebp - 0x4c], 0
movzx eax, byte [edi + ebx]
add eax, 0xffffff3e
mov dword [ebp - 0x3c], ebx
mov byte [ebp - 0x15], 0
cmp eax, 0x3d
ja case.0x10023965.196
movzx eax, byte [eax + 0x10024644]
jmp dword [eax*4 + 0x10024630]
mov dword [ebp - 0x3c], edx
jmp case.0x10023965.196
cmp byte [edi + ebx + 1], 0x15
jne case.0x10023965.196
movzx ecx, byte [edi + ebx + 5]
movzx eax, byte [edi + ebx + 4]
shl cx, 8
or cx, ax
mov dword [ebp - 0x3c], ebx
movzx eax, byte [edi + ebx + 2]
movzx edx, cx
movzx ecx, byte [edi + ebx + 3]
shl cx, 8
or cx, ax
shl edx, 0x10
movzx eax, cx
lea ecx, [ebp - 0x2c]
push 1
push ecx
or eax, edx
lea ecx, [ebp - 0x60]
sub eax, dword [ebp - 0x70]
push ecx
mov ecx, dword [ebp - 0x50]
push eax
call fcn.100951f0
mov esi, dword [ebp - 0x60]
cmp esi, dword [ebp - 0x14]
ja 0x100245ed
movzx eax, byte [0x100d0d6d]
push eax
lea eax, [ebp - 0x30]
mov dword [ebp - 0x30], esi
push eax
push ecx
lea eax, [ebp - 0xa4]
push eax
lea ecx, [ebp - 0x48]
call fcn.1009d290
cmp byte [ebp - 0xa0], 0
je case.0x10023c30.84
lea eax, [esi + 5]
cmp eax, dword [ebp - 0x14]
ja 0x100245ed
movzx ecx, byte [edi + esi + 3]
movzx eax, byte [edi + esi + 2]
shl cx, 8
or cx, ax
movzx eax, byte [esi + edi]
movzx edx, cx
movzx ecx, byte [edi + esi + 1]
shl cx, 8
or cx, ax
shl edx, 0x10
movzx eax, cx
mov ecx, dword [ebp - 0x14]
or eax, edx
sub eax, dword [ebp - 0x70]
cmp eax, ecx
jae case.0x10023965.196
push 1
lea ecx, [ebp - 0x2c]
push ecx
lea ecx, [ebp - 0x60]
push ecx
mov ecx, dword [ebp - 0x50]
push eax
call fcn.100951f0
movzx eax, byte [0x100d0d6d]
mov esi, dword [ebp - 0x60]
push eax
lea eax, [ebp - 0x30]
mov dword [ebp - 0x30], esi
push eax
push ecx
lea eax, [ebp - 0xb4]
push eax
lea ecx, [ebp - 0x48]
call fcn.1009d290
cmp byte [ebp - 0xb0], 0
mov ecx, dword [ebp - 0x14]
je case.0x10023965.196
cmp esi, ecx
jae case.0x10023965.196
mov ebx, esi
jmp 0x10023c1d
movzx ecx, byte [edi + ebx + 4]
movzx eax, byte [edi + ebx + 3]
shl cx, 8
or cx, ax
mov dword [ebp - 0x3c], ebx
movzx eax, byte [edi + ebx + 1]
movzx edx, cx
movzx ecx, byte [edi + ebx + 2]
shl cx, 8
or cx, ax
shl edx, 0x10
movzx eax, cx
or eax, edx
mov dword [ebp - 0x30], eax
movzx eax, byte [0x100d0d6d]
push eax
lea eax, [ebp - 0x30]
push eax
push ecx
lea eax, [ebp - 0x90]
push eax
lea ecx, [ebp - 0x48]
call fcn.1009d290
cmp byte [ebp - 0x8c], 0
je case.0x10023c30.84
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
test dword [eax + ebx + 1], 0x80000000
je 0x10023b12
mov ecx, dword [edi + ebx + 1]
mov eax, 5
not ecx
inc ecx
sub eax, ecx
jmp 0x10023b19
mov eax, dword [edi + ebx + 1]
add ebx, 5
add ebx, eax
movzx eax, byte [0x100d0d6d]
push eax
lea eax, [ebp - 0x30]
mov dword [ebp - 0x30], ebx
push eax
push ecx
lea eax, [ebp - 0xbc]
mov esi, ebx
push eax
lea ecx, [ebp - 0x48]
call fcn.1009d290
cmp byte [ebp - 0xb8], 0
mov ecx, dword [ebp - 0x14]
je case.0x10023965.196
lea eax, [ebx + 4]
cmp eax, ecx
jae case.0x10023965.196
jmp 0x10023c1d
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp eax, 5
ja 0x100245ed
movzx ecx, byte [edi + ebx + 4]
movzx eax, byte [edi + ebx + 3]
shl cx, 8
or cx, ax
mov dword [ebp - 0x3c], ebx
movzx eax, byte [edi + ebx + 1]
movzx edx, cx
movzx ecx, byte [edi + ebx + 2]
shl cx, 8
or cx, ax
shl edx, 0x10
movzx eax, cx
or eax, edx
mov dword [ebp - 0x30], eax
movzx eax, byte [0x100d0d6d]
push eax
lea eax, [ebp - 0x30]
push eax
push ecx
lea eax, [ebp - 0xac]
push eax
lea ecx, [ebp - 0x48]
call fcn.1009d290
cmp byte [ebp - 0xa8], 0
je case.0x10023c30.84
mov ecx, dword [edi + ebx + 1]
test ecx, ecx
jns 0x10023bde
not ecx
mov eax, 5
inc ecx
sub eax, ecx
add ebx, eax
jmp 0x10023be3
add ebx, 5
add ebx, ecx
movzx eax, byte [0x100d0d6d]
mov esi, ebx
push eax
lea eax, [ebp - 0x30]
mov dword [ebp - 0x30], ebx
push eax
push ecx
lea eax, [ebp - 0x88]
push eax
lea ecx, [ebp - 0x48]
call fcn.1009d290
cmp byte [ebp - 0x84], 0
je case.0x10023c30.84
lea eax, [ebx + 4]
cmp eax, dword [ebp - 0x14]
jae 0x100245ed
movzx ecx, byte [edi + esi]
lea eax, [ecx - 0x50]
cmp eax, 0x39
ja case.0x10023c30.84
movzx eax, byte [eax + 0x10024690]
jmp dword [eax*4 + 0x10024684]
cmp byte [edi + esi + 1], 0x31
je case.0x10023c30.84
lea eax, [ecx - 0x50]
mov esi, 1
push ecx
push eax
lea eax, [ebp - 0x14c]
push eax
lea ecx, [ebp - 0x4c]
mov dword [ebp - 0x24], esi
mov byte [ebp - 0x15], 1
call fcn.10096250
mov ecx, eax
call fcn.100962a0
mov ecx, dword [ebp - 0x14]
jmp 0x10023ca9
mov al, byte [edi + esi + 1]
cmp al, 5
je 0x10023c8e
cmp al, 0xd
je 0x10023c8e
cmp al, 0x15
je 0x10023c8e
cmp al, 0x1d
je 0x10023c8e
cmp al, 0x25
je 0x10023c8e
cmp al, 0x2d
je 0x10023c8e
cmp al, 0x35
je 0x10023c8e
cmp al, 0x3d
jne case.0x10023c30.84
shr al, 3
mov esi, 6
movzx eax, al
push ecx
push eax
lea eax, [ebp - 0x12c]
jmp 0x10023c4e
mov ecx, dword [ebp - 0x14]
mov esi, dword [ebp - 0x24]
cmp byte [ebp - 0x15], 0
je 0x1002402d
lea eax, [ebx + esi]
mov dword [ebp - 0x30], 0
push eax
push ecx
push edi
lea ecx, [ebp - 0x1ac]
mov dword [ebp - 0x1c], eax
call fcn.1001d150
mov eax, dword [ebp - 0x1c]
mov esi, eax
cmp esi, dword [ebp - 0x58]
jae 0x1002402d
jmp 0x10023ce3
mov eax, dword [ebp - 0x1c]
add eax, 0x118
cmp esi, eax
ja 0x1002402d
mov dword [ebp - 0x38], 0
movzx eax, byte [edi + esi]
mov byte [ebp - 0x2b], 0
cmp eax, 0xff
jg case.0x10023d22.1
je 0x10023fac
cmp eax, 0xeb
ja case.0x10023d22.1
movzx eax, byte [eax + 0x100246f8]
jmp dword [eax*4 + 0x100246cc]
cmp byte [edi + esi + 1], 0
jne 0x10023fbe
cmp byte [edi + esi + 2], 0
jne 0x10023fbe
add esi, 0x118
jmp 0x10023fbe
cmp byte [edi + esi + 1], 0x35
jne 0x10023fbe
add esi, 0x118
jmp 0x10023fbe
cmp byte [edi + esi + 1], 0xd
jne 0x10023fbe
add esi, 0x118
jmp 0x10023fbe
cmp byte [edi + esi + 3], 0
je 0x10023fbe
mov dword [ebp - 0x38], 0
movzx eax, byte [edi + esi]
push ecx
sub eax, 0xb8
lea ecx, [ebp - 0x38]
push eax
lea eax, [ebp - 0x134]
push eax
call fcn.10096250
mov ecx, eax
call fcn.100962a0
mov byte [ebp - 0x2b], 1
jmp 0x10023fbe
mov al, byte [edi + esi + 1]
cmp al, 0xc0
jb 0x10023fbe
cmp al, 0xc7
ja 0x10023fbe
mov dword [ebp - 0x38], 0
movzx eax, byte [edi + esi + 1]
push ecx
sub eax, 0xc0
lea ecx, [ebp - 0x38]
push eax
lea eax, [ebp - 0x144]
push eax
call fcn.10096250
mov ecx, eax
call fcn.100962a0
mov byte [ebp - 0x2b], 1
jmp 0x10023fbe
mov al, byte [edi + esi + 1]
cmp al, 5
je 0x10023e20
cmp al, 0xd
je 0x10023e20
cmp al, 0x15
je 0x10023e20
cmp al, 0x1d
je 0x10023e20
cmp al, 0x35
je 0x10023e20
cmp al, 0x3d
jne 0x10023fbe
jmp 0x10023e20
mov dword [ebp - 0x38], 0
mov al, byte [edi + esi + 1]
shr al, 3
push ecx
movzx eax, al
lea ecx, [ebp - 0x38]
push eax
lea eax, [ebp - 0x13c]
push eax
call fcn.10096250
mov ecx, eax
call fcn.100962a0
mov byte [ebp - 0x2b], 1
jmp 0x10023fbe
mov al, byte [edi + esi + 1]
cmp al, 5
je 0x10023e90
cmp al, 0xd
je 0x10023e90
cmp al, 0x15
je 0x10023e90
cmp al, 0x1d
je 0x10023e90
cmp al, 0x35
je 0x10023e90
cmp al, 0x3d
je 0x10023e90
cmp al, 0x5c
je case.0x10023d22.115
cmp al, 0x74
jne 0x10023fbe
add esi, 0x118
jmp 0x10023fbe
mov dword [ebp - 0x38], 0
mov al, byte [edi + esi + 1]
shr al, 3
push ecx
movzx eax, al
lea ecx, [ebp - 0x38]
push eax
lea eax, [ebp - 0xc4]
push eax
call fcn.10096250
mov ecx, eax
call fcn.100962a0
mov byte [ebp - 0x2b], 1
jmp 0x10023fbe
movzx ecx, byte [edi + esi + 4]
movzx eax, byte [edi + esi + 3]
shl cx, 8
or cx, ax
mov dword [ebp - 0x3c], ebx
movzx eax, byte [edi + esi + 1]
movzx edx, cx
movzx ecx, byte [edi + esi + 2]
shl cx, 8
or cx, ax
shl edx, 0x10
movzx eax, cx
or eax, edx
mov dword [ebp - 0x54], eax
movzx eax, byte [0x100d0d6d]
push eax
lea eax, [ebp - 0x54]
push eax
push ecx
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0x48]
call fcn.1009d290
cmp byte [ebp - 0x7c], 0
je 0x10023fbe
mov ecx, dword [edi + esi + 1]
test ecx, ecx
jns 0x10023f2e
not ecx
mov eax, 5
inc ecx
sub eax, ecx
add esi, eax
jmp 0x10023f33
add esi, 5
add esi, ecx
lea eax, [esi + 4]
cmp eax, dword [ebp - 0x14]
jbe 0x10023f43
cmp byte [edi + ebx], 0xe8
jne 0x10023f55
jmp 0x10023f4f
cmp byte [edi + esi], 0xe8
mov dword [ebp - 0x1c], esi
jne 0x10023f55
mov dword [ebp - 0x3c], ebx
add esi, 0x118
lea eax, [esi + 1]
push eax
lea ecx, [ebp - 0x1ac]
call fcn.1001d110
jmp 0x10024023
mov al, byte [edi + esi + 1]
cmp al, 1
jne 0x10023f74
inc dword [ebp - 0x30]
mov dword [ebp - 0x3c], ebx
test al, al
jns 0x10023f95
add esi, 0x118
lea ecx, [ebp - 0x1ac]
lea eax, [esi + 1]
push eax
call fcn.1001d110
jmp 0x10024023
movzx eax, al
lea ecx, [ebp - 0x1ac]
inc esi
add esi, eax
lea eax, [esi + 1]
push eax
call fcn.1001d110
jmp 0x10024023
cmp byte [edi + esi + 1], 0x15
jne 0x10023fbe
add esi, 0x118
jmp 0x10023fbe
mov ebx, dword [ebp - 0x3c]
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x38]
call fcn.10096270
test al, al
je 0x10023fd4
cmp byte [ebp - 0x2b], 0
jne 0x10023fda
cmp dword [ebp - 0x30], 3
jne 0x10023fe7
mov dword [ebp - 0x1c], esi
add esi, 0x118
mov byte [ebp - 0x25], 1
cmp esi, dword [ebp - 0x14]
jae 0x100245ed
lea edx, [ebp - 0x59]
lea ecx, [ebp - 0x1ac]
call fcn.100ae1f0
test eax, eax
je 0x100245ed
dec esi
add esi, eax
mov al, byte [edi + esi + 1]
cmp al, 0xf2
je 0x10024015
cmp al, 0xf3
jne 0x10024023
push 1
lea ecx, [ebp - 0x1ac]
inc ebx
call fcn.1001d130
inc esi
cmp esi, dword [ebp - 0x58]
jb 0x10023ce0
cmp byte [ebp - 0x25], 0
je 0x1002403e
mov ebx, dword [ebp - 0x68]
add ebx, 0x2328
jmp 0x10024041
mov ebx, dword [ebp - 0x3c]
cmp ebx, dword [ebp - 0x14]
jae 0x100245ed
mov eax, dword [ebp - 0x124]
add eax, ebx
cmp eax, dword [ebp - 0x120]
ja 0x10024060
mov dword [ebp - 0x11c], eax
lea edx, [ebp - 0x31]
lea ecx, [ebp - 0x124]
call fcn.100ae1f0
test eax, eax
je 0x100245ed
mov ecx, dword [ebp - 0x14]
add ebx, eax
mov eax, dword [ebp - 0x40]
mov edx, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x40], eax
cmp ebx, dword [ebp - 0x58]
jb 0x10023925
mov esi, dword [ebp - 0x1c]
xor ebx, ebx
cmp byte [ebp - 0x15], bl
je 0x100245ed
cmp byte [ebp - 0x25], bl
je 0x100245ed
lea eax, [esi + 0x136]
cmp eax, ecx
ja 0x100245ed
push esi
push ecx
push edi
lea ecx, [ebp - 0x124]
call fcn.1001d150
mov ecx, dword [ebp - 0x1c]
lea eax, [ecx + 0x12c]
cmp ecx, eax
jae 0x100245ef
mov al, byte [edi + esi]
cmp al, 0xf
jne 0x1002418b
movzx eax, byte [edi + esi + 1]
add eax, 0xffffff5d
cmp eax, 0x1a
ja case.0x1002419f.4
movzx eax, byte [eax + 0x10024800]
jmp dword [eax*4 + 0x100247e4]
mov al, byte [edi + esi + 2]
cmp al, 0xcb
je 0x1002411a
cmp al, 0xeb
je 0x1002411a
cmp al, 0xf2
je 0x1002411a
cmp al, 0xf3
je 0x1002411a
cmp al, 0xf7
jne case.0x1002419f.4
lea ebx, [esi + 3]
jmp 0x100243ba
mov al, byte [edi + esi + 2]
cmp al, 0xc1
je 0x10024146
cmp al, 0xc7
je 0x10024146
cmp al, 0xc8
je 0x10024146
cmp al, 0xcf
je 0x10024146
cmp al, 0xd8
je 0x10024146
cmp al, 0xda
je 0x10024146
cmp al, 0xe8
je 0x10024146
cmp al, 0xfb
jne case.0x1002419f.4
lea ebx, [esi + 4]
jmp 0x100243ba
cmp byte [edi + esi + 2], 0xc0
jae 0x1002411a
jmp case.0x1002419f.4
cmp byte [edi + esi + 2], 0xe1
jae 0x10024146
jmp case.0x1002419f.4
mov al, byte [edi + esi + 2]
cmp al, 0xc1
je 0x1002411a
cmp al, 0xcb
je 0x1002411a
cmp al, 0xd2
je 0x1002411a
cmp al, 0xda
je 0x1002411a
cmp al, 0xde
je 0x1002411a
cmp al, 0xeb
je 0x1002411a
cmp al, 0xfe
je 0x1002411a
jmp case.0x1002419f.4
cmp byte [edi + esi + 2], 0xc1
jae 0x1002411a
jmp case.0x1002419f.4
movzx eax, al
add eax, 0xfffffffd
cmp eax, 0xfc
ja case.0x1002419f.4
movzx eax, byte [eax + 0x10024844]
jmp dword [eax*4 + 0x1002481c]
cmp byte [edi + esi + 1], 0x8b
jne case.0x1002419f.4
cmp byte [edi + esi + 2], 0xec
jne case.0x1002419f.4
add esi, 0x190
cmp esi, dword [ebp - 0x14]
jae 0x100245ed
mov eax, dword [ebp - 0x124]
add eax, esi
cmp eax, dword [ebp - 0x120]
ja 0x100241d9
mov dword [ebp - 0x11c], eax
lea edx, [ebp - 0x31]
lea ecx, [ebp - 0x124]
call fcn.100ae1f0
test eax, eax
je 0x100245ed
mov ecx, dword [ebp - 0x1c]
dec esi
add esi, eax
inc esi
lea eax, [ecx + 0x12c]
cmp esi, eax
jb 0x100240d2
mov bl, byte [ebp - 0x1d]
jmp 0x100245ef
mov al, byte [edi + esi + 1]
cmp al, 0x84
je case.0x1002419f.106
cmp al, 0x8c
je case.0x1002419f.106
cmp al, 0xb4
je case.0x1002419f.106
cmp al, 0x95
je case.0x1002419f.106
cmp al, 0x9c
je case.0x1002419f.106
cmp al, 0xb5
je case.0x1002419f.106
cmp al, 0x9d
je case.0x1002419f.106
cmp al, 0x8d
je case.0x1002419f.106
cmp al, 0x74
je case.0x1002419f.106
cmp al, 0x44
je case.0x1002419f.106
cmp al, 0x50
je case.0x1002419f.106
cmp al, 0xbc
je case.0x1002419f.106
cmp al, 0x94
je case.0x1002419f.106
cmp al, 0x45
jmp 0x100241b2
mov al, byte [edi + esi + 1]
cmp al, 0x84
je case.0x1002419f.106
cmp al, 0x94
je case.0x1002419f.106
cmp al, 0xb4
je case.0x1002419f.106
cmp al, 0x9c
je case.0x1002419f.106
cmp al, 0xe5
je case.0x1002419f.106
cmp al, 0x5d
je case.0x1002419f.106
cmp al, 0x55
je case.0x1002419f.106
cmp al, 0x4d
je case.0x1002419f.106
cmp al, 0x85
je case.0x1002419f.106
cmp al, 0x4b
je case.0x1002419f.106
cmp al, 0x51
je case.0x1002419f.106
cmp al, 0x71
je case.0x1002419f.106
cmp al, 0x83
je case.0x1002419f.106
cmp al, 0x1c
je case.0x1002419f.106
cmp al, 0x46
je case.0x1002419f.106
cmp al, 0x7c
je case.0x1002419f.106
cmp al, 0x4c
je case.0x1002419f.106
cmp al, 0x44
je case.0x1002419f.106
cmp al, 0x54
je case.0x1002419f.106
cmp al, 0x5c
jmp 0x100241b2
cmp byte [edi + esi + 1], 0x84
jne case.0x1002419f.4
cmp byte [edi + esi + 2], 0x24
jmp 0x100241b2
mov al, byte [edi + esi + 1]
cmp al, 0xec
je case.0x1002419f.106
cmp al, 0xed
je case.0x1002419f.106
cmp al, 0xc4
je case.0x1002419f.106
cmp al, 0xc5
jmp 0x100241b2
mov al, byte [edi + esi + 1]
cmp al, 0x30
jb 0x10024342
cmp al, 0x37
jbe 0x100243ad
cmp al, 0x15
je case.0x1002419f.106
cmp al, 0xf0
je case.0x1002419f.106
cmp al, 0x25
je case.0x1002419f.106
cmp al, 0xb4
jmp 0x100241b2
cmp ebx, 1
ja 0x100245ed
mov ecx, dword [edi + esi + 1]
inc ebx
test ecx, ecx
jns 0x10024381
not ecx
mov eax, 5
inc ecx
sub eax, ecx
add esi, eax
jmp 0x10024386
add esi, 5
add esi, ecx
lea eax, [esi + 4]
cmp eax, dword [ebp - 0x14]
ja 0x100245ed
mov dword [ebp - 0x1c], esi
jmp case.0x1002419f.4
cmp byte [edi + esi + 1], 1
jne case.0x1002419f.4
add esi, 2
jmp 0x100241f5
cmp byte [edi + esi + 1], 0x35
lea ebx, [esi + 6]
je 0x100243ba
lea ebx, [esi + 2]
mov ecx, dword [ebp - 0x14]
lea eax, [ebx + 0x4ba]
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x40], 0
cmp eax, ecx
ja 0x100245ed
push ebx
push ecx
push edi
lea ecx, [ebp - 0x124]
call fcn.1001d150
mov ecx, ebx
lea edx, [ecx + 0x4b0]
cmp ecx, edx
jae 0x10024204
movzx eax, byte [edi + ebx]
add eax, 0xffffffcf
cmp eax, 0xce
ja case.0x1002440c.50
movzx eax, byte [eax + 0x1002496c]
jmp dword [eax*4 + 0x10024944]
cmp byte [edi + ebx + 1], 0x8b
jne case.0x1002440c.50
cmp byte [edi + ebx + 2], 0xec
jne case.0x1002440c.50
mov ebx, edx
jmp case.0x1002440c.50
cmp byte [edi + ebx + 1], 0x15
jne case.0x1002440c.50
mov ebx, edx
jmp case.0x1002440c.50
cmp byte [edi + ebx + 1], 1
jne case.0x1002440c.50
mov bl, 1
jmp 0x100245ef
cmp byte [edi + ebx + 1], 0xa4
jne case.0x1002440c.50
mov ebx, edx
jmp case.0x1002440c.50
mov al, byte [edi + ebx + 1]
cmp al, 0x24
je case.0x1002440c.242
cmp al, 0x30
jb 0x10024487
cmp al, 0x37
ja 0x10024487
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp eax, 3
je case.0x1002440c.242
jmp case.0x1002440c.50
cmp al, 0xd1
je case.0x1002440c.115
cmp al, 0x54
je case.0x1002440c.115
cmp al, 0x15
je case.0x1002440c.115
cmp al, 0x25
je case.0x1002440c.115
cmp al, 0xb4
jne case.0x1002440c.50
mov ebx, edx
jmp case.0x1002440c.50
cmp byte [edi + esi + 1], 3
jbe 0x10024541
mov al, byte [edi + ebx + 1]
cmp al, 6
jb 0x100244c1
cmp al, 0xf
jbe 0x10024541
cmp al, 0x10
jb 0x100244c9
cmp al, 0x13
jbe 0x10024541
cmp al, 0x16
jb 0x100244d1
cmp al, 0x1b
jbe 0x10024541
cmp al, 0x1e
jb 0x100244d9
cmp al, 0x1f
jbe 0x10024541
cmp al, 0x30
jb 0x100244e1
cmp al, 0x33
jbe 0x10024541
cmp al, 0x36
jb 0x100244e9
cmp al, 0x3f
jbe 0x10024541
cmp al, 0x45
je case.0x1002440c.115
cmp al, 0x55
je case.0x1002440c.115
cmp al, 0x75
je case.0x1002440c.115
cmp al, 0x4d
je case.0x1002440c.115
cmp al, 0x7d
je case.0x1002440c.115
cmp al, 0x9c
je case.0x1002440c.115
cmp al, 0x6e
je case.0x1002440c.115
cmp al, 0xbd
je case.0x1002440c.115
cmp al, 0x95
je case.0x1002440c.115
cmp al, 0xe5
je case.0x1002440c.115
cmp al, 0x5d
jne case.0x1002440c.50
mov ebx, edx
jmp case.0x1002440c.50
mov al, byte [edi + ebx + 1]
shr al, 3
push ecx
movzx eax, al
lea ecx, [ebp - 0x64]
push eax
lea eax, [ebp - 0xc4]
push eax
call fcn.10096250
mov ecx, eax
call fcn.100962a0
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x64]
call fcn.10096270
test al, al
jne case.0x1002440c.242
jmp case.0x1002440c.50
mov eax, dword [ebp - 0x40]
cmp eax, 1
ja 0x100245ed
mov ecx, dword [edi + ebx + 1]
inc eax
mov dword [ebp - 0x40], eax
test ecx, ecx
jns 0x1002459b
not ecx
mov eax, 5
inc ecx
sub eax, ecx
add ebx, eax
jmp 0x100245a0
add ebx, 5
add ebx, ecx
lea eax, [ebx + 4]
cmp eax, dword [ebp - 0x14]
ja 0x100245ed
mov dword [ebp - 0x1c], ebx
cmp ebx, dword [ebp - 0x14]
jae 0x100245ed
push ebx
lea ecx, [ebp - 0x124]
call fcn.1001d110
lea edx, [ebp - 0x31]
lea ecx, [ebp - 0x124]
call fcn.100ae1f0
test eax, eax
je 0x100245ed
mov edx, dword [ebp - 0x1c]
add ebx, eax
add edx, 0x4b0
mov dword [ebp - 0x64], 0
cmp ebx, edx
jb 0x100243f3
mov bl, byte [ebp - 0x1d]
jmp 0x100245ef
xor bl, bl
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x48]
mov eax, dword [ebp - 0x48]
push eax
push dword [eax]
lea eax, [ebp - 0x54]
push eax
call fcn.10099f40
mov byte [ebp - 4], 0
push dword [ebp - 0x48]
call dword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [ebp - 4], 0xffffffff
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret