Function at 0x44340c
Capabilities:
Check http status code
Encode data using base64
Inspect section memory permissions
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x464
mov eax, dword [ebp + 0x14]
or dword [ebp - 0x40], 0xffffffff
xor edx, edx
cmp eax, edx
mov dword [ebp - 4], 3
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x30], edx
mov dword [ebp - 0xc], edx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x2c], edx
jne 0x443452
mov eax, dword [ebp + 0x10]
cmp eax, edx
je 0x44344e
mov dword [eax], 0x63
xor eax, eax
leave
ret
mov dword [eax], edx
mov eax, dword [ebp + 0x10]
cmp eax, edx
je 0x44345d
mov dword [eax], edx
mov eax, dword [ebp + 0x18]
cmp eax, edx
push ebx
push esi
push edi
jne 0x44346f
push 0x10
pop ecx
jmp 0x443ed3
test word [ebp + 0xc], 0x800
mov dword [eax], edx
je 0x44347d
push 0x20
jmp 0x443469
test dword [ebp + 0xc], 0xffc38580
je 0x44348a
push 0x11
jmp 0x443469
mov eax, dword [ebp + 0x1c]
cmp eax, edx
jne 0x443499
mov eax, 0x457800
mov dword [ebp + 0x1c], eax
lea ecx, [eax + 0x100]
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x78], ecx
lea ecx, [eax + 0x200]
add eax, 0x340
mov dword [ebp - 0x70], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x74], ecx
mov ecx, 0x300000
and eax, ecx
cmp eax, 0x100000
je 0x4434d6
cmp eax, 0x200000
je 0x4434d2
cmp eax, ecx
je 0x443516
push 0xa
jmp 0x4434d8
push 0xd
pop eax
mov dword [ebp - 0x48], 1
mov byte [ebp - 0x44], al
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x54], edx
movzx edi, byte [ebx]
cmp edi, edx
mov dword [ebp - 8], ebx
je 0x443b8d
xor esi, esi
cmp dword [ebp - 0x24], esi
je 0x443527
test word [ebp + 0xc], 0x4000
je 0x443a98
add dword [ebp - 4], 6
jmp 0x443a98
mov dword [ebp - 0x48], 2
mov byte [ebp - 0x44], 0xd
mov byte [ebp - 0x43], 0xa
jmp 0x4434e3
test byte [ebp + 0xc], 8
je 0x44357a
mov eax, dword [ebp - 0x70]
test byte [eax + edi], 1
jne 0x443b7c
cmp edi, 0x23
jne 0x443578
inc ebx
mov al, byte [ebx]
test al, al
je 0x443b8b
mov ecx, dword [ebp - 0x48]
cmp al, byte [ebp - 0x44]
jne 0x44355f
cmp ecx, 1
je 0x443566
mov al, byte [ebx + 1]
cmp al, byte [ebp - 0x43]
je 0x443566
inc ebx
mov al, byte [ebx]
test al, al
jne 0x44354d
cmp byte [ebx], 0
je 0x443b8b
lea ebx, [ebx + ecx - 1]
jmp 0x443b7c
xor esi, esi
inc dword [ebp - 0x40]
test word [ebp + 0xc], 0x4000
je 0x4435b1
cmp edi, 0x2a
je 0x4435b1
cmp edi, 0x2b
je 0x4435b1
cmp edi, 0x3f
je 0x443a4a
cmp edi, 0x7b
jne 0x4435ad
lea eax, [ebx + 1]
call fcn.0044146e
test eax, eax
jne 0x443a52
add dword [ebp - 4], 6
cmp edi, 0x3f
jg 0x443a52
je 0x443a4a
cmp edi, 0x24
je 0x443b41
cmp edi, 0x28
je 0x443635
cmp edi, 0x29
je 0x4435f7
jle 0x4435e7
cmp edi, 0x2b
jle 0x443a4a
cmp edi, 0x2e
je 0x443b41
add dword [ebp - 4], 2
mov dword [ebp - 0x30], 1
jmp 0x443b7c
mov eax, dword [ebp - 0x2c]
add dword [ebp - 4], 3
cmp eax, esi
jbe 0x44362e
mov edi, dword [ebp - 4]
sub edi, dword [ebp + eax*4 - 0x468]
dec eax
cmp edi, 0x7530
mov dword [ebp - 0x2c], eax
movzx eax, byte [ebp + eax - 0x144]
mov dword [ebp - 0x20], eax
jle 0x443867
push 0x32
jmp 0x443ef1
xor edi, edi
jmp 0x443867
push 3
xor edi, edi
lea ecx, [ebx + 1]
cmp byte [ecx], 0x3f
pop esi
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x34], esi
jne 0x4439f6
lea edx, [ebx + 2]
movzx eax, byte [edx]
cmp eax, 0x3c
jg 0x443780
je 0x443765
cmp eax, 0x21
je 0x44394d
cmp eax, 0x23
je 0x443742
cmp eax, 0x28
je 0x4436e7
cmp eax, 0x2f
jle 0x44368f
cmp eax, 0x39
jle 0x4437ab
cmp eax, 0x3a
je 0x44394d
push 2
mov dword [ebp - 0x18], edi
mov dword [ebp - 8], edi
lea eax, [ebp - 8]
mov ebx, edx
pop esi
movzx ecx, byte [ebx]
cmp ecx, 0x58
jg 0x44396d
je 0x443968
cmp ecx, 0x29
je 0x44399c
cmp ecx, 0x2d
je 0x443963
cmp ecx, 0x3a
je 0x4439be
cmp ecx, 0x4a
je 0x443954
cmp ecx, 0x55
jne 0x443ebb
or dword [eax], 0x200
jmp 0x443996
movzx edx, byte [ebx + 3]
mov eax, dword [ebp - 0x70]
test byte [edx + eax], 0x10
je 0x443716
add ebx, 4
add dword [ebp - 4], esi
jmp 0x4436fd
inc ebx
movzx ecx, byte [ebx]
test byte [ecx + eax], 0x10
jne 0x4436fc
cmp byte [ebx], 0x29
je 0x443a13
push 0x1a
jmp 0x443ef1
mov ebx, ecx
cmp byte [ebx + 2], 0x3f
jne 0x443739
mov al, byte [ebx + 3]
cmp al, 0x3d
je 0x443a13
cmp al, 0x21
je 0x443a13
cmp al, 0x3c
je 0x443a13
inc ebx
inc ebx
push 0x1c
jmp 0x443ef1
add ebx, esi
mov al, byte [ebx]
test al, al
je 0x44375e
cmp al, 0x29
je 0x443755
inc ebx
mov al, byte [ebx]
test al, al
jne 0x44374a
cmp byte [ebx], 0
jne 0x443b7c
push 0x12
jmp 0x443ef1
add ebx, esi
mov al, byte [ebx]
cmp al, 0x3d
je 0x443775
cmp al, 0x21
jne 0x443ea7
add dword [ebp - 4], esi
mov dword [ebp - 0x3c], esi
jmp 0x443a13
cmp eax, 0x3d
jl 0x44368f
cmp eax, 0x3e
jle 0x44394d
cmp eax, 0x43
je 0x44392e
cmp eax, 0x50
je 0x4437ce
cmp eax, 0x52
jne 0x44368f
mov ebx, ecx
inc ebx
inc ebx
cmp eax, 0x52
je 0x4437bf
inc ebx
movzx eax, byte [ebx]
test byte [eax + 0x457008], 4
jne 0x4437b2
cmp byte [ebx], 0x29
jne 0x443eab
add dword [ebp - 4], 9
jmp 0x443847
add ebx, esi
mov al, byte [ebx]
cmp al, 0x3c
jne 0x443821
mov eax, dword [ebp - 0x70]
inc ebx
mov ecx, ebx
jmp 0x4437df
inc ebx
movzx edx, byte [ebx]
test byte [edx + eax], 0x10
jne 0x4437de
cmp byte [ebx], 0x3e
jne 0x443eaf
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], 0x2710
jg 0x443eb3
mov eax, ebx
sub eax, ecx
cmp eax, dword [ebp - 0x28]
jle 0x443a03
cmp eax, 0x20
mov dword [ebp - 0x28], eax
jle 0x443a03
push 0x30
jmp 0x443ef1
cmp al, 0x3d
je 0x44382d
cmp al, 0x3e
jne 0x443eb7
add dword [ebp - 4], 9
mov ecx, dword [ebp - 0x70]
inc ebx
movzx eax, byte [ebx]
test byte [eax + ecx], 0x10
jne 0x443831
cmp byte [ebx], 0x29
jne 0x443eaf
mov al, byte [ebx + 1]
cmp al, 0x2b
je 0x44385e
cmp al, 0x2a
je 0x44385e
cmp al, 0x3f
je 0x44385e
cmp al, 0x7b
jne 0x443b7c
add dword [ebp - 4], 6
push 0xb
pop edi
xor esi, esi
lea ecx, [ebx + 1]
movzx eax, byte [ecx]
cmp eax, 0x7b
jne 0x4438ac
lea esi, [ebx + 2]
mov eax, esi
call fcn.0044146e
test eax, eax
je 0x44390b
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x14]
push eax
mov eax, esi
call fcn.004414d0
mov ecx, dword [ebp - 0xc]
add esp, 0xc
test ecx, ecx
mov ebx, eax
jne 0x443ec9
mov eax, dword [ebp - 0x10]
jmp 0x443914
cmp eax, 0x2a
jne 0x4438be
or eax, 0xffffffff
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x10], eax
mov ebx, ecx
jmp 0x44391b
cmp eax, 0x2b
jne 0x443901
xor edx, edx
inc edx
or eax, 0xffffffff
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x10], eax
mov ebx, ecx
lea ecx, [edx - 1]
imul ecx, edi
add dword [ebp - 4], ecx
cmp eax, edx
jle 0x4438f0
mov ecx, dword [ebp - 4]
sub eax, edx
add edi, 7
imul eax, edi
lea eax, [ecx + eax - 6]
mov dword [ebp - 4], eax
lea eax, [ebx + 1]
cmp byte [eax], 0x2b
jne 0x443b7c
jmp 0x443e94
cmp eax, 0x3f
jne 0x44390b
xor eax, eax
inc eax
jmp 0x4438b4
xor eax, eax
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
mov edx, dword [ebp - 0x14]
test edx, edx
jne 0x4438d1
inc dword [ebp - 4]
test eax, eax
jle 0x4438f0
add edi, 7
dec eax
imul edi, eax
add dword [ebp - 4], edi
jmp 0x4438f0
mov ebx, edx
inc ebx
movzx eax, byte [ebx]
test byte [eax + 0x457008], 4
jne 0x443930
cmp byte [ebx], 0x29
je 0x443e96
push 0x27
jmp 0x443ef1
mov ebx, edx
jmp 0x443a13
or dword [eax], 0x80000
or dword [ebp + 0xc], 0x8000000
jmp 0x443996
lea eax, [ebp - 0x18]
jmp 0x443996
or dword [eax], 0x40
jmp 0x443996
cmp ecx, 0x69
je 0x443993
cmp ecx, 0x6d
je 0x44398f
cmp ecx, 0x73
je 0x44398a
cmp ecx, 0x78
jne 0x443ebb
or dword [eax], 8
jmp 0x443996
or dword [eax], 4
jmp 0x443996
or dword [eax], esi
jmp 0x443996
or dword [eax], 1
inc ebx
jmp 0x44369d
cmp dword [ebp - 0x40], edi
jne 0x4439be
mov eax, dword [ebp - 8]
or eax, dword [ebp + 0xc]
mov edx, dword [ebp - 0x18]
or dword [ebp - 0x40], 0xffffffff
not edx
and eax, edx
add dword [ebp - 4], esi
mov dword [ebp + 0xc], eax
mov dword [ebp - 0x18], edi
mov dword [ebp - 8], edi
mov eax, dword [ebp - 0x18]
or eax, dword [ebp - 8]
test al, 7
je 0x4439cf
add dword [ebp - 4], 4
mov dword [ebp - 0x3c], esi
cmp ecx, 0x29
jne 0x443a13
cmp dword [ebp - 0x3c], esi
jne 0x443b7c
cmp dword [ebp - 0x20], 0
je 0x4439ed
cmp dword [ebp - 0x20], 3
jne 0x443b7c
add dword [ebp - 0x20], 2
jmp 0x443b7c
mov eax, dword [ebp + 0xc]
shr eax, 0xc
not eax
and eax, 1
je 0x443a13
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x64
jle 0x443a13
mov dword [ebp - 0x34], 6
mov eax, dword [ebp - 0x2c]
cmp eax, 0xc8
jae 0x443ebf
mov cl, byte [ebp - 0x20]
mov byte [ebp + eax - 0x144], cl
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x464], ecx
inc eax
add ecx, dword [ebp - 0x34]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 4], ecx
jmp 0x443b7c
inc dword [ebp - 4]
jmp 0x4438f0
mov eax, edi
sub eax, 0x5b
je 0x443c77
dec eax
je 0x443b49
dec eax
dec eax
je 0x443b41
sub eax, 0x1d
je 0x443a8a
dec eax
jne 0x4435e7
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x20]
lea eax, [ecx + eax + 3]
mov dword [ebp - 4], eax
jmp 0x443b7c
lea esi, [ebx + 1]
mov eax, esi
call fcn.0044146e
test eax, eax
jne 0x443ac2
cmp dword [ebp - 0x24], 0
je 0x4435e7
cmp edi, 0x5c
jne 0x4435e7
lea eax, [ebx + 1]
cmp byte [eax], 0x45
jne 0x4435e7
and dword [ebp - 0x24], 0
mov ebx, eax
jmp 0x443b7c
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x14]
push eax
mov eax, esi
call fcn.004414d0
mov ecx, dword [ebp - 0xc]
add esp, 0xc
test ecx, ecx
mov ebx, eax
jne 0x443ec9
cmp dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x10]
jne 0x443af7
cmp eax, 1
je 0x443b02
cmp eax, 0xffffffff
je 0x443b02
cmp dword [ebp - 0x14], 1
jne 0x443b07
cmp eax, 0xffffffff
jne 0x443b1d
inc dword [ebp - 4]
jmp 0x443b2e
mov ecx, dword [ebp - 0x30]
sub dword [ebp - 4], ecx
cmp dword [ebp - 0x14], 0
jle 0x443b1d
mov edx, dword [ebp - 4]
lea ecx, [edx + ecx + 3]
mov dword [ebp - 4], ecx
xor ecx, ecx
test eax, eax
setg cl
lea ecx, [ecx + ecx + 1]
add ecx, dword [ebp - 0x30]
add dword [ebp - 4], ecx
lea eax, [ebx + 1]
cmp byte [eax], 0x3f
jne 0x4438f0
mov ebx, eax
jmp 0x4438f0
inc dword [ebp - 4]
jmp 0x4435eb
push esi
push dword [ebp + 0xc]
lea eax, [ebp - 0xc]
push dword [ebp - 0x1c]
push eax
lea eax, [ebp - 8]
push eax
call fcn.0044124a
mov ecx, dword [ebp - 0xc]
add esp, 0x14
cmp ecx, esi
jne 0x443ec6
xor edx, edx
inc edx
cmp eax, esi
mov dword [ebp - 0x30], edx
jl 0x443bb1
add dword [ebp - 4], 2
mov ebx, dword [ebp - 8]
inc ebx
movzx edi, byte [ebx]
test edi, edi
mov dword [ebp - 8], ebx
jne 0x4434fa
xor edx, edx
add dword [ebp - 4], 4
test word [ebp + 0xc], 0x4000
je 0x443b9d
add dword [ebp - 4], 6
cmp dword [ebp - 4], 0x10000
jle 0x443ef8
push 0x14
jmp 0x443469
mov ecx, eax
neg ecx
cmp ecx, 0x13
jne 0x443bbf
mov dword [ebp - 0x24], edx
jmp 0x443b79
cmp ecx, 0xf
je 0x443ec3
cmp ecx, 0xd
je 0x443ec3
cmp ecx, 0xe
je 0x443ec3
inc dword [ebp - 4]
push 0xffffffffffffffec
pop ecx
cmp eax, ecx
jg 0x443b79
sub ecx, eax
cmp ecx, 0x20
mov eax, edx
jge 0x443bef
shl eax, cl
or dword [ebp - 0x54], eax
cmp ecx, dword [ebp - 0x58]
jle 0x443bfa
mov dword [ebp - 0x58], ecx
mov ebx, dword [ebp - 8]
add dword [ebp - 4], 2
cmp byte [ebx + 1], 0x7b
jne 0x443b7c
lea edi, [ebx + 2]
mov eax, edi
call fcn.0044146e
test eax, eax
je 0x443b7c
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x14]
push eax
mov eax, edi
call fcn.004414d0
mov ecx, dword [ebp - 0xc]
add esp, 0xc
test ecx, ecx
mov ebx, eax
jne 0x443ec9
cmp dword [ebp - 0x14], ecx
jne 0x443c51
cmp dword [ebp - 0x10], 1
je 0x443c5d
cmp dword [ebp - 0x10], 0xffffffff
je 0x443c5d
cmp dword [ebp - 0x14], 1
jne 0x443c62
cmp dword [ebp - 0x10], 0xffffffff
jne 0x443c62
inc dword [ebp - 4]
jmp 0x443c66
add dword [ebp - 4], 5
lea eax, [ebx + 1]
cmp byte [eax], 0x3f
jne 0x443b7c
jmp 0x443abb
inc ebx
cmp byte [ebx], 0x5e
mov dword [ebp - 8], ebx
jne 0x443c8d
inc ebx
mov dword [ebp - 0x18], 0xa
mov dword [ebp - 8], ebx
jmp 0x443c90
mov dword [ebp - 0x18], esi
mov al, byte [ebx]
test al, al
je 0x443ef4
cmp dword [ebp - 0x24], esi
je 0x443cbd
cmp al, 0x5c
jne 0x443df9
lea eax, [ebx + 1]
cmp byte [eax], 0x45
jne 0x443df9
mov dword [ebp - 0x24], esi
mov ebx, eax
jmp 0x443d5d
cmp al, 0x5c
jne 0x443dc3
xor ebx, ebx
inc ebx
push ebx
push dword [ebp + 0xc]
lea eax, [ebp - 0xc]
push dword [ebp - 0x1c]
push eax
lea eax, [ebp - 8]
push eax
call fcn.0044124a
mov ecx, dword [ebp - 0xc]
add esp, 0x14
cmp ecx, esi
mov edi, eax
jne 0x443ec6
neg eax
cmp eax, 4
jne 0x443d99
push 8
pop edi
mov ebx, dword [ebp - 8]
inc dword [ebp - 0x18]
cmp byte [ebx + 1], 0x2d
jne 0x443d5d
mov esi, ebx
add ebx, 2
mov al, byte [ebx]
cmp al, 0x5c
jne 0x443e0b
push 1
push dword [ebp + 0xc]
lea eax, [ebp - 0xc]
push dword [ebp - 0x1c]
mov dword [ebp - 8], ebx
push eax
lea eax, [ebp - 8]
push eax
call fcn.0044124a
mov ecx, dword [ebp - 0xc]
add esp, 0x14
test ecx, ecx
jne 0x443ec6
mov ebx, dword [ebp - 8]
mov ecx, eax
neg ecx
cmp ecx, 4
jne 0x443e01
push 8
pop eax
cmp eax, edi
mov dword [ebp - 0x18], 0xa
jl 0x443eef
inc ebx
mov al, byte [ebx]
test al, al
mov dword [ebp - 8], ebx
je 0x443ef4
xor esi, esi
cmp dword [ebp - 0x24], esi
jne 0x443c9f
cmp al, 0x5d
jne 0x443c9a
test al, al
je 0x443ef4
cmp dword [ebp - 0x18], 1
jne 0x443e25
add dword [ebp - 4], 3
jmp 0x443b7c
cmp eax, 0xf
jne 0x443da5
push 0x58
jmp 0x443cf9
cmp eax, 0x13
jne 0x443db2
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 8]
jmp 0x443d5d
cmp edi, esi
jge 0x443cfa
mov dword [ebp - 0x18], 0xa
jmp 0x443dad
cmp al, 0x5b
jne 0x443df9
mov al, byte [ebx + 1]
cmp al, 0x3a
je 0x443dd6
cmp al, 0x2e
je 0x443dd6
cmp al, 0x3d
jne 0x443df9
lea eax, [ebp - 8]
push eax
lea ecx, [ebp - 0x7c]
mov eax, ebx
call fcn.00441a0a
test eax, eax
mov ebx, dword [ebp - 8]
pop ecx
je 0x443df9
inc ebx
mov dword [ebp - 0x18], 0xa
jmp 0x443d5d
movzx edi, byte [ebx]
jmp 0x443cfd
cmp ecx, 0xf
jne 0x443e16
push 0x58
pop eax
jmp 0x443e16
test al, al
je 0x443e1e
cmp al, 0x5d
je 0x443e1e
movzx eax, byte [ebx]
test eax, eax
jge 0x443d4e
mov ebx, esi
jmp 0x443d5d
add dword [ebp - 4], 0x21
cmp byte [ebx + 1], 0x7b
jne 0x443b7c
lea edi, [ebx + 2]
mov eax, edi
call fcn.0044146e
test eax, eax
je 0x443b7c
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x14]
push eax
mov eax, edi
call fcn.004414d0
mov ecx, dword [ebp - 0xc]
add esp, 0xc
cmp ecx, esi
mov ebx, eax
jne 0x443ec9
cmp dword [ebp - 0x14], esi
jne 0x443e75
cmp dword [ebp - 0x10], 1
je 0x443e81
cmp dword [ebp - 0x10], 0xffffffff
je 0x443e81
cmp dword [ebp - 0x14], 1
jne 0x443e86
cmp dword [ebp - 0x10], 0xffffffff
jne 0x443e86
inc dword [ebp - 4]
jmp 0x443e8a
add dword [ebp - 4], 5
lea eax, [ebx + 1]
mov cl, byte [eax]
cmp cl, 0x2b
jne 0x443e9f
mov ebx, eax
add dword [ebp - 4], 6
jmp 0x443b7c
cmp cl, 0x3f
jmp 0x443c6c
push 0x18
jmp 0x443ef1
push 0x1d
jmp 0x443ef1
push 0x2a
jmp 0x443ef1
push 0x31
jmp 0x443ef1
push 0x29
jmp 0x443ef1
push 0xc
jmp 0x443ef1
push 0x13
jmp 0x443ef1
push 0x2d
pop ecx
mov ebx, dword [ebp - 8]
sub ebx, dword [ebp + 8]
mov eax, dword [ebp + 0x18]
mov dword [eax], ebx
xor edx, edx
mov eax, dword [ecx*4 + 0x461070]
mov esi, dword [ebp + 0x14]
mov dword [esi], eax
mov eax, dword [ebp + 0x10]
cmp eax, edx
je 0x443ee8
mov dword [eax], ecx
xor eax, eax
jmp 0x4440fc
push 8
pop ecx
jmp 0x443ec9
push 6
jmp 0x443ef1
mov edi, dword [ebp - 0x28]
mov ecx, dword [ebp - 4]
add edi, 3
mov eax, edi
imul eax, dword [ebp - 0x38]
lea ebx, [eax + ecx + 0x28]
push ebx
call dword [0x461140]
mov esi, eax
test esi, esi
pop ecx
jne 0x443f1e
push 0x15
pop ecx
jmp 0x443ed1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp + 0xc]
add eax, 3
mov word [esi + 0x1a], ax
mov ax, word [ebp - 0x38]
mov word [esi + 0x1c], ax
mov eax, dword [ebp + 0x1c]
sub eax, 0x457800
mov dword [esi + 4], ebx
xor ebx, ebx
neg eax
sbb eax, eax
and eax, dword [ebp + 0x1c]
mov word [esi + 0x18], 0x28
mov dword [esi + 0x20], eax
mov dword [esi], 0x50435245
mov dword [esi + 8], ecx
mov dword [esi + 0xc], ebx
mov word [esi + 0x1e], bx
mov dword [esi + 0x24], ebx
mov dword [ebp - 0x5c], edi
mov dword [ebp - 0x60], ebx
movzx eax, word [esi + 0x18]
add eax, esi
mov dword [ebp - 0x64], eax
movzx edi, word [esi + 0x1a]
movzx edx, word [esi + 0x1c]
imul edi, edx
add edi, eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x68], eax
mov dword [ebp - 8], eax
lea eax, [ebp - 0x7c]
push eax
push ebx
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x28]
push eax
push ebx
push ebx
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x1c]
push eax
mov eax, ecx
and eax, 7
push eax
mov dword [ebp - 0x6c], edi
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], ebx
mov byte [edi], 0x50
push ecx
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x1c], ebx
call fcn.00443021
mov ax, word [ebp - 0x1c]
mov word [esi + 0x10], ax
mov ax, word [ebp - 0x58]
add esp, 0x30
mov word [esi + 0x12], ax
cmp dword [ebp - 0x4c], ebx
je 0x443fe4
or dword [esi + 8], 0x80000000
cmp dword [ebp - 0xc], 0
mov ebx, dword [ebp - 8]
jne 0x443ff9
cmp byte [ebx], 0
je 0x443ff9
mov dword [ebp - 0xc], 0x16
mov eax, dword [ebp - 0x34]
mov byte [eax], 0
inc eax
sub eax, edi
cmp eax, dword [ebp - 4]
jle 0x44400e
mov dword [ebp - 0xc], 0x17
mov ax, word [esi + 0x12]
cmp ax, word [esi + 0x10]
jbe 0x44401f
mov dword [ebp - 0xc], 0xf
cmp dword [ebp - 0xc], 0
je 0x444035
push esi
call dword [0x461144]
pop ecx
mov ecx, dword [ebp - 0xc]
jmp 0x443ec9
test byte [ebp + 0xc], 0x10
mov ebx, 0x100
jne 0x4440bb
push dword [ebp - 0x54]
mov eax, dword [ebp + 0xc]
mov dword [ebp + 0x14], eax
push 0
lea eax, [ebp + 0x14]
push eax
push edi
call fcn.004431ff
add esp, 0x10
test eax, eax
je 0x444062
or dword [esi + 8], 0x10
jmp 0x4440bb
mov eax, dword [ebp - 0x28]
test eax, eax
jge 0x44407c
push 0
lea eax, [ebp + 0x14]
push eax
push edi
call fcn.00443355
add esp, 0xc
test eax, eax
jl 0x4440a2
mov ecx, eax
and ecx, 0xff
test ebx, eax
je 0x444095
mov edx, dword [ebp - 0x78]
movzx edx, byte [edx + ecx]
cmp edx, ecx
jne 0x444095
mov eax, ecx
or dword [esi + 8], 0x40000000
mov word [esi + 0x14], ax
jmp 0x4440bb
push dword [ebp - 0x54]
push 0
push edi
call fcn.004432b7
add esp, 0xc
test eax, eax
je 0x4440bb
or dword [esi + 8], 0x10000000
mov edx, dword [ebp - 0x2c]
test edx, edx
jl 0x4440fa
mov ecx, dword [esi + 8]
test cl, 0x10
je 0x4440d1
test dx, 0x200
je 0x4440fa
mov eax, edx
and eax, 0xff
test ebx, edx
je 0x4440ed
mov edi, dword [ebp - 0x78]
movzx edi, byte [edi + eax]
cmp edi, eax
jne 0x4440ed
and edx, 0xfffffeff
or ecx, 0x20000000
mov word [esi + 0x16], dx
mov dword [esi + 8], ecx
mov eax, esi
pop edi
pop esi
pop ebx
leave
ret