Function at 0x44ce30
Capabilities:
Parse credit card information

Disassembly:
dec esp
and al, 0x10
ret 0xccc3
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x48bfb8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xdac
mov ecx, dword [ebp + 0x18]
mov edx, dword [ecx]
mov eax, dword [ebp + 8]
xor ecx, ecx
push ebx
xor ebx, ebx
cmp byte [eax], 2
mov eax, dword [eax + 8]
setne cl
mov dword [ebp - 0x3c], edx
mov edx, dword [ebp + 0xc]
push esi
push edi
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x34], 0x49588a
dec ecx
and ecx, dword [0x4a09d8]
add edx, edx
mov edi, dword [eax + edx*8 + 0xc]
lea eax, [eax + edx*8 + 0xc]
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x78], ebx
mov dword [ebp - 0x38], ebx
cmp dword [edi + 8], 0x3d
mov dword [ebp - 0x24], edi
je 0x44e736
mov eax, 0x10
call fcn.00488480
mov ecx, dword [edi]
mov esi, esp
mov dword [esi], ecx
mov edx, dword [edi + 4]
mov dword [esi + 4], edx
mov eax, dword [edi + 8]
mov dword [esi + 8], eax
mov ecx, dword [edi + 0xc]
mov dword [esi + 0xc], ecx
mov eax, dword [esi + 8]
cmp eax, 7
jge 0x44d338
cmp eax, 6
jne 0x44dd3a
mov eax, dword [esi + 4]
test eax, eax
je 0x44d10d
mov ecx, dword [esi]
xor edi, edi
mov dword [esi], 0x49588a
mov dword [esi + 8], edi
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], eax
cmp dword [ecx], edi
je 0x44cff7
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
cmp eax, dword [ecx]
jae 0x44cf21
cmp edi, 0xfd
jae 0x44cf2b
mov dl, byte [eax]
mov byte [ebp + edi - 0x194], dl
inc eax
inc edi
cmp eax, dword [ecx]
jb 0x44cf07
mov dword [ebp - 0x14], eax
cmp edi, 0xfd
jb 0x44cf39
jmp 0x44cf2e
mov dword [ebp - 0x14], eax
cmp eax, dword [ecx]
jb 0x44d028
mov ecx, dword [ebp - 0x18]
mov ebx, dword [ecx + 4]
movzx eax, byte [ebx + 0x17]
cmp eax, 3
ja case.default.0x44cf45
jmp dword [eax*4 + 0x44eaa4]
mov ecx, dword [ebx + 0xc]
push 0
call fcn.00466bf0
jmp 0x44cfc1
mov edx, dword [ebx + 0x18]
mov eax, dword [ebx + 0x10]
push edx
push 0
call eax
add esp, 8
mov ecx, 0xfd
sub ecx, edi
cmp eax, ecx
ja 0x44d028
mov ebx, dword [ebp - 0x18]
mov ecx, dword [ebx + 4]
lea edx, [ebp + edi - 0x194]
push edx
call fcn.00466bf0
add edi, eax
movzx eax, word [ebx + 0xa]
add dword [ebp - 0x14], eax
add ebx, 0xc
cmp dword [ebx], 0
mov dword [ebp - 0x18], ebx
jne 0x44cefd
mov ecx, dword [ebp - 0x14]
mov al, byte [ecx]
test al, al
je 0x44d017
cmp edi, 0xfd
jae 0x44d01f
inc ecx
mov byte [ebp + edi - 0x194], al
mov al, byte [ecx]
inc edi
test al, al
jne 0x44d000
cmp edi, 0xfd
jb 0x44d024
cmp byte [ecx], 0
jne 0x44d028
test edi, edi
jne 0x44d066
mov eax, dword [ebp - 0x18]
cmp dword [eax], 0
je 0x44d038
add eax, 0xc
cmp dword [eax], 0
jne 0x44d030
cmp byte [eax + 8], 0
je 0x44dd3a
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x44e9f1
mov ecx, dword [ebp - 0x34]
test ecx, ecx
je 0x44e9f1
push eax
or eax, 0xffffffff
call fcn.004011f0
jmp 0x44e9f1
mov ebx, dword [ebp - 0x18]
mov byte [ebp + edi - 0x194], 0
cmp byte [ebx + 8], 0
je 0x44d0b3
push 0
push edi
lea ecx, [ebp - 0x194]
push ecx
mov ecx, 0x4a2c18
call fcn.0041c320
mov dword [ebx + 4], eax
test eax, eax
je 0x44d042
movzx edx, byte [ebx + 9]
cmp edx, dword [eax + 0x10]
jge 0x44e691
cmp byte [ebx + 8], 2
jne 0x44d042
mov edi, dword [ebp - 0x24]
mov ebx, dword [ebp - 0x20]
add edi, 0x10
jmp 0x44ce93
cmp byte [ebp - 0x194], 0
je 0x44e8f9
lea eax, [ebp - 0x4d]
push eax
push 0
push 3
lea ecx, [ebp - 0x90]
push ecx
push edi
lea edx, [ebp - 0x194]
push edx
mov ecx, 0x4a2c18
call fcn.0041d790
test eax, eax
jne 0x44d10b
movzx eax, byte [ebp - 0x4d]
mov ecx, dword [ebp - 0x90]
push eax
push ecx
push edi
lea edx, [ebp - 0x194]
push edx
mov ecx, 0x4a2c18
call fcn.0041db10
test eax, eax
je 0x44e8f9
mov dword [esi], eax
mov ebx, dword [esi]
mov al, byte [ebx + 0x17]
test al, al
jne 0x44d11c
mov eax, dword [ebx + 0xc]
mov al, byte [eax + 0x17]
movzx eax, al
mov edi, 1
sub eax, edi
je 0x44d1c6
sub eax, 3
jne 0x44d1fc
mov eax, dword [ebx + 0x10]
cmp eax, 0x43dbf0
jne 0x44d157
mov eax, dword [0x49d3c8]
mov ecx, dword [eax + 8]
mov dword [esi], ecx
mov edx, dword [eax + 0xc]
mov dword [esi + 4], edx
mov dword [esi + 8], edi
jmp 0x44dd3a
cmp eax, 0x43b970
jne 0x44d189
mov eax, dword [ebx + 0x18]
cmp byte [eax + 4], 0
jne 0x44d178
mov eax, edi
xor ecx, ecx
mov dword [esi], eax
mov dword [esi + 4], ecx
mov dword [esi + 8], edi
jmp 0x44dd3a
xor eax, eax
xor ecx, ecx
mov dword [esi], eax
mov dword [esi + 4], ecx
mov dword [esi + 8], edi
jmp 0x44dd3a
cmp eax, 0x43c350
jne 0x44d1a5
mov dword [esi], 4
mov dword [esi + 4], 0
mov dword [esi + 8], edi
jmp 0x44dd3a
cmp eax, 0x43e1d0
jne 0x44d1fc
mov ecx, dword [0x49d3c8]
mov edx, dword [ecx + 0x38]
mov dword [esi], edx
mov dword [esi + 4], 0
mov dword [esi + 8], edi
jmp 0x44dd3a
cmp dword [0x4a0b8c], 0
jne 0x44dd33
cmp byte [ebx + 0x17], 0
jne 0x44d1de
mov eax, dword [ebx + 0xc]
jmp 0x44d1e0
mov eax, ebx
test byte [eax + 0x15], 0xa
jne 0x44dd33
xor ecx, ecx
cmp dword [eax + 0xc], ecx
setne cl
mov eax, ecx
test eax, eax
jne 0x44dd33
movzx eax, byte [ebx + 0x17]
cmp eax, 3
ja case.default.0x44d205
jmp dword [eax*4 + 0x44eab4]
mov eax, ebx
call fcn.00401150
cmp dword [0x4a0b8c], 0
jne 0x44d24d
cmp dword [ebx + 0xc], 0
jne 0x44d24d
mov eax, dword [ebx + 0x18]
push 0
lea edx, [ebp - 0x71]
push edx
push eax
call dword [0x48d12c]
test eax, eax
je 0x44d243
mov dword [0x4a3b6c], 0
dec eax
jmp 0x44d281
mov dword [0x4a3b6c], ebx
xor eax, eax
jmp 0x44d281
mov eax, dword [ebx + 0xc]
jmp 0x44d281
push 0
mov ecx, 0x4a2bfc
call fcn.004039a0
cmp eax, 0xffffffff
jne 0x44d281
xor eax, eax
jmp 0x44d281
push cs
push cs
mov ecx, dword [ebx + 0x18]
mov edx, dword [ebx + 0x10]
push ecx
push 0
call edx
add esp, 8
lea ebx, [eax + 1]
cmp ebx, edi
jne 0x44d2b2
mov eax, dword [esi]
mov cl, byte [eax + 0x17]
test cl, cl
jne 0x44d297
mov eax, dword [eax + 0xc]
mov cl, byte [eax + 0x17]
cmp cl, 1
je 0x44dd33
mov dword [esi], 0x49588a
mov dword [esi + 8], 0
jmp 0x44dd3a
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ecx]
sub edx, dword [ebp - 0x3c]
mov eax, dword [ebp + 0x20]
add edx, dword [eax]
cmp ebx, edx
ja 0x44d2cf
mov eax, dword [ebp - 0x3c]
mov edi, eax
add eax, ebx
mov dword [ebp - 0x3c], eax
jmp 0x44d31b
cmp ebx, 0x1001
jae 0x44d2ee
cmp dword [ebp - 0x38], 0x9c40
jae 0x44d2ee
mov eax, ebx
call fcn.004854f0
add dword [ebp - 0x38], ebx
mov edi, esp
jmp 0x44d31b
cmp dword [ebp - 0x28], 0xc8
je 0x44e69f
push ebx
call fcn.00476de3
mov ecx, dword [ebp - 0x28]
add esp, 4
mov dword [ebp + ecx*4 - 0x4b4], eax
test eax, eax
je 0x44e69f
inc dword [ebp - 0x28]
mov edi, eax
mov ecx, dword [esi]
push edi
call fcn.00466bf0
mov dword [esi], edi
mov dword [esi + 4], 0
mov dword [esi + 8], 4
jmp 0x44dd3a
cmp eax, 0x3b
jne 0x44d676
mov ecx, dword [esi]
movzx eax, byte [ecx + 9]
mov edi, dword [ecx + 4]
mov dword [ebp - 0x40], edi
cmp eax, dword [ebp - 0x20]
jg 0x44d042
mov ebx, dword [ebp - 0x20]
lea edx, [ebp - 0x194]
mov dword [esi + 4], edx
mov edx, dword [esi + 0xc]
mov dword [ebp - 0x58], edx
xor edx, edx
sub ebx, eax
mov dword [ebp - 0x20], ebx
mov dword [esi + 0xc], edx
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x60], edx
mov dword [ebp - 4], edx
cmp byte [ecx + 8], 2
lea ebx, [ebp + ebx*4 - 0xcb4]
sete cl
movzx edx, cl
push edx
push eax
mov eax, dword [ebp + 0x10]
push ebx
push esi
push eax
lea ecx, [ebp - 0x68]
push ecx
push edi
call fcn.0044ec60
test al, al
je 0x44e6aa
mov eax, dword [esi + 8]
cmp eax, 1
je 0x44d648
cmp eax, 2
je 0x44d648
cmp eax, 5
je 0x44d648
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x44d3ef
mov edx, dword [ebp - 0x24]
cmp dword [edx + 0x18], 0x3d
jne 0x44d3ef
mov eax, dword [ebp + 8]
cmp byte [eax], 3
mov dword [ebp - 0x14], 1
je 0x44e6e1
mov ebx, dword [ebp - 0x54]
jmp 0x44d421
mov ecx, dword [ebp - 0x24]
cmp dword [ecx + 0x18], 0x10
mov dword [ebp - 0x14], 0
jne 0x44d41f
test eax, eax
je 0x44d41f
mov ebx, dword [ebx - 4]
cmp dword [ebx + 8], 3
jne 0x44d41f
mov ebx, dword [ebx]
mov al, byte [ebx + 0x17]
test al, al
jne 0x44d41b
mov edx, dword [ebx + 0xc]
mov al, byte [edx + 0x17]
cmp al, 1
je 0x44d421
xor ebx, ebx
mov edi, dword [esi]
test ebx, ebx
je 0x44d4d6
mov eax, dword [0x49d3c8]
mov ecx, dword [eax + 0x94]
cmp ecx, dword [ebp - 0x40]
jne 0x44d44b
cmp byte [ebx + 0x16], 0
je 0x44d44b
test byte [ebx + 0x15], 4
je 0x44d4d6
mov eax, dword [esi + 0xc]
cmp eax, edi
jne 0x44d460
mov edx, dword [esi + 4]
push edx
push eax
mov eax, ebx
call fcn.00466e90
jmp 0x44d49d
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x44d465
sub eax, edx
cmp edi, dword [0x4a2b50]
jne 0x44d492
cmp eax, 0x40
jb 0x44d492
push eax
push edi
mov eax, ebx
call fcn.00466e90
xor eax, eax
mov dword [0x4a2b50], eax
mov dword [0x4a2b54], eax
jmp 0x44d49d
push ebx
or eax, 0xffffffff
mov ecx, edi
call fcn.004011f0
cmp dword [ebp - 0x14], 0
jne 0x44e6f1
mov eax, dword [ebp - 0x24]
dec dword [ebp - 0x20]
add eax, 0x10
mov dword [ebp - 0x24], eax
mov eax, dword [eax + 0xc]
mov dword [esi + 0xc], eax
lea eax, [ebp - 0x68]
mov dword [esi], ebx
mov dword [esi + 8], 3
mov dword [ebp - 4], 0xffffffff
call fcn.0044f1d0
jmp 0x44dd3a
mov eax, dword [esi + 0xc]
mov edx, 1
test eax, eax
je 0x44d502
mov ecx, dword [ebp - 0x28]
cmp ecx, 0xc8
je 0x44e705
cmp eax, edi
jne 0x44d4f7
xor edx, edx
mov dword [ebp + ecx*4 - 0x4b4], eax
inc ecx
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x58]
mov dword [esi + 0xc], ecx
cmp byte [edi], 0
jne 0x44d535
lea eax, [ebp - 0x68]
mov dword [esi], 0x49588a
mov dword [esi + 8], 4
mov dword [esi + 4], 0
mov dword [ebp - 4], 0xffffffff
call fcn.0044f1d0
jmp 0x44dd3a
mov eax, dword [ebp - 0x40]
cmp byte [eax + 0x31], 0
je 0x44d54c
test edx, edx
je 0x44d587
xor edx, edx
cmp dword [ebp - 0x14], edx
sete dl
jmp 0x44d587
cmp edi, dword [0x4a2b50]
jne 0x44d582
xor edx, edx
cmp dword [ebp - 0x14], edx
jne 0x44d587
mov ecx, dword [ebp - 0x24]
mov eax, dword [ecx + 0x18]
add ecx, 0x18
cmp eax, 0x3d
je 0x44d587
lea esp, [esp]
cmp eax, 0x3b
je 0x44d582
mov eax, dword [ecx + 0x10]
add ecx, 0x10
cmp eax, 0x3d
jne 0x44d570
jmp 0x44d587
mov edx, 1
mov dword [esi + 4], 0
mov dword [esi + 8], 4
test edx, edx
je 0x44d634
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x44d5a2
mov ecx, dword [ebp + 0x1c]
sub eax, edx
mov edx, dword [ecx]
sub edx, dword [ebp - 0x3c]
lea ebx, [eax + 1]
mov eax, dword [ebp + 0x20]
add edx, dword [eax]
cmp ebx, edx
ja 0x44d5d2
mov ecx, dword [ebp - 0x3c]
push ebx
push edi
push ecx
call fcn.0047b470
add esp, 0xc
add dword [ebp - 0x3c], ebx
jmp 0x44d632
cmp ebx, 0x1001
jae 0x44d5fc
cmp dword [ebp - 0x38], 0x9c40
jae 0x44d5fc
mov eax, ebx
call fcn.004854f0
mov eax, esp
push ebx
push edi
push eax
call fcn.0047b470
add esp, 0xc
add dword [ebp - 0x38], ebx
jmp 0x44d632
cmp dword [ebp - 0x28], 0xc8
je 0x44e72e
push ebx
call fcn.00476de3
mov edx, dword [ebp - 0x28]
add esp, 4
mov dword [ebp + edx*4 - 0x4b4], eax
test eax, eax
je 0x44e72e
push ebx
push edi
push eax
call fcn.0047b470
add esp, 0xc
inc dword [ebp - 0x28]
mov dword [esi], eax
lea eax, [ebp - 0x68]
mov dword [ebp - 4], 0xffffffff
call fcn.0044f1d0
jmp 0x44dd3a
mov eax, dword [ebp - 0x58]
mov dword [esi + 0xc], eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x68]
test eax, eax
je 0x44dd3a
lea ecx, [ebp - 0x60]
push ecx
lea edx, [ebp - 0x64]
push edx
push eax
call fcn.004670b0
add esp, 0xc
jmp 0x44dd3a
cmp eax, 0x1c
jne 0x44d6b9
cmp dword [esi + 0xc], 0
je 0x44e691
test ebx, ebx
je 0x44e691
mov eax, dword [ebp + ebx*4 - 0xcb8]
mov ecx, dword [eax]
dec ebx
mov dword [esi], ecx
mov edx, dword [eax + 4]
mov dword [esi + 4], edx
mov ecx, dword [eax + 8]
mov dword [esi + 8], ecx
mov edx, dword [eax + 0xc]
mov dword [esi + 0xc], edx
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x20], ebx
mov dword [esi + 0xc], eax
jmp 0x44dd44
test ebx, ebx
je 0x44d042
dec ebx
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp + ebx*4 - 0xcb4]
cmp dword [ebx + 8], 7
jge 0x44d042
cmp eax, 0x1d
jne 0x44d711
mov eax, dword [esi + 0xc]
test eax, eax
je 0x44d042
mov ecx, dword [eax + 0xc]
mov dword [ebx + 0xc], ecx
mov edx, dword [ebx]
mov dword [esi], edx
mov dword [ebp - 0x24], eax
mov eax, dword [ebx + 4]
mov dword [esi + 4], eax
mov ecx, dword [ebx + 8]
mov dword [esi + 8], ecx
mov edx, dword [ebx + 0xc]
mov dword [esi + 0xc], edx
mov dword [ebx + 8], 1
jmp 0x44dd3a
cmp eax, 0xf
je 0x44e691
cmp eax, 0x10
je 0x44d733
cmp eax, 0x1b
je 0x44d733
cmp eax, 0x28
je 0x44d733
mov eax, ebx
call fcn.00445830
mov dword [ebp - 0x2c], eax
mov eax, dword [esi + 8]
xor edi, edi
lea ecx, [eax - 8]
mov dword [ebp - 0x14], edi
cmp ecx, 0x32
ja case.0x44d74e.10
movzx ecx, byte [ecx + 0x44eae0]
jmp dword [ecx*4 + 0x44eac4]
mov ecx, dword [ebp - 0x2c]
mov eax, ebx
call fcn.00445770
cdq
mov dword [esi], eax
mov dword [esi + 4], edx
mov dword [esi + 8], 1
jmp 0x44dd3a
push es
mov dword [esi + 8], edx
jmp 0x44dd3a
cmp dword [ebp - 0x2c], edi
jne 0x44d972
mov dword [esi], 0x49588a
mov dword [esi + 8], edi
jmp 0x44dd3a
xor ecx, ecx
cmp dword [ebp - 0x2c], 1
sete cl
push ecx
mov ecx, ebx
call fcn.004458f0
add esp, 4
cmp dword [esi + 8], 0x35
jne 0x44d9bf
cmp edx, edi
ja 0x44d9aa
jb 0x44d997
cmp eax, 0xffffffff
ja 0x44d9aa
not eax
mov dword [esi + 4], edi
mov dword [esi], eax
mov dword [esi + 8], 1
jmp 0x44dd3a
not eax
not edx
mov dword [esi + 4], edx
mov dword [esi], eax
mov dword [esi + 8], 1
jmp 0x44dd3a
cmp eax, 0x1000
jae 0x44d9da
xor eax, eax
cdq
mov dword [esi + 4], edx
mov dword [esi], eax
mov dword [esi + 8], 1
jmp 0x44dd3a
movzx eax, byte [eax]
cdq
mov dword [esi + 4], edx
mov dword [esi], eax
mov dword [esi + 8], 1
jmp 0x44dd3a
mov ecx, dword [ebp - 0x20]
cmp ecx, edi
je 0x44d042
dec ecx
mov dword [ebp - 0x20], ecx
lea ecx, [ebp + ecx*4 - 0xcb4]
mov dword [ebp - 0x48], ecx
mov ecx, dword [ecx]
mov dword [ebp - 0x30], ecx
mov ecx, dword [ecx + 8]
cmp ecx, 7
jge 0x44d042
cmp eax, 0x1b
jg 0x44db05
cmp eax, 0x10
jl 0x44db05
cmp ecx, 3
je 0x44da3e
mov dword [esi], 0x49588a
mov dword [esi + 8], edi
jmp 0x44dd3a
add eax, 0xfffffff0
cmp eax, 0xb
ja case.default.0x44da4a
jmp dword [eax*4 + 0x44eb14]
mov edx, dword [ebp - 0x30]
mov edi, dword [edx]
mov eax, ebx
call fcn.004662d0
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
mov cl, byte [eax + 0x17]
test cl, cl
jne 0x44da6f
mov ecx, dword [eax + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 2
jne 0x44e422
mov edx, dword [ebx]
mov dword [esi], edx
mov eax, dword [ebx + 4]
mov dword [esi + 4], eax
mov ecx, dword [ebx + 8]
mov eax, dword [ebp - 0x24]
mov dword [esi + 8], ecx
mov edx, dword [ebx + 0xc]
mov dword [esi + 0xc], edx
mov ecx, dword [eax + 0xc]
mov dword [esi + 0xc], ecx
jmp 0x44dd3a
mov edx, dword [ebp - 0x30]
mov eax, dword [edx]
mov dword [ebp - 0x14], eax
cmp dword [esi + 8], 0x28
je 0x44e03c
cmp dword [ebp - 0x2c], edi
je 0x44e03c
mov eax, dword [ebp - 0x30]
call fcn.00445830
mov edi, eax
mov dword [ebp - 0x58], edi
test edi, edi
je 0x44e03c
cmp dword [ebp - 0x2c], 1
jne 0x44db3e
cmp edi, 1
jne 0x44db3e
cmp dword [esi + 8], 0x31
jne 0x44db53
mov eax, dword [esi + 8]
cmp eax, 0x2d
jg 0x44dde5
cmp eax, 0x29
jl 0x44dde5
xor ecx, ecx
cmp dword [ebp - 0x2c], 1
sete cl
push ecx
mov ecx, ebx
call fcn.004458f0
mov ecx, dword [ebp - 0x30]
mov edi, edx
xor edx, edx
add esp, 4
cmp dword [ebp - 0x58], 1
mov ebx, eax
sete dl
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x80], edi
push edx
call fcn.004458f0
mov ecx, dword [esi + 8]
add ecx, 0xffffffdf
add esp, 4
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], edx
mov dword [ebp - 0x18], 1
cmp ecx, 0x17
ja case.0x44dbab.40
jmp dword [ecx*4 + 0x44eb44]
cmp eax, ebx
jne 0x44dbfa
cmp edx, edi
jne 0x44dbfa
mov eax, 1
add dword [eax], eax
add byte [eax], al
xor ecx, ecx
mov dword [esi + 4], ecx
mov dword [esi], eax
jmp case.0x44dbab.40
xor eax, eax
xor ecx, ecx
mov dword [esi + 4], ecx
mov dword [esi], eax
jmp 0x244dd0a
add bh, byte [ebx]
ret
jmp 0x44df0a
cmp edx, edi
jl 0x44dbfa
jg 0x44dc2b
cmp eax, ebx
jbe 0x44dbfa
ret
mov eax, 0x1000001
xor ecx, ecx
mov dword [esi + 0x24], ecx
test eax, 0xcee906
add byte [eax], al
cmp edx, edi
jg 0x44dbfa
jl 0x44dc46
cmp eax, ebx
jae 0x44dbea
mov eax, 0x201001
xor ecx, ecx
mov dword [esi + 4], ecx
mov dword [esi], eax
leave
mov bl, 0
add byte [eax], dl
cmp edx, esi
jl 0x44dbea
jg 0x44dc61
cmp eax, ebx
jb 0x44dbfa
mov eax, 1
xor ecx, ecx
mov dword [esi + 5], ecx
mov dword [esi], esp
jmp 0x44dc07
cmp edx, edi
jg 0x44dbfa
jl 0x44dc80
cmp eax, ebx
ja 0x3cdbfa
mov eax, 0x10011
xor ecx, ecx
mov dword [esi + 4], ecx
mov dword [esi], eax
jmp case.0x44dbab.40
or eax, ebx
or edx, edi
mov dword [esi + 4], edx
mov dword [esi], eax
jmp case.0x44dbab.40
mov dword [esi], 0x49588a
mov dword [ebp - 0x18], 0
mov eax, dword [esi + 0x48]
call fcn.0048a930
or eax, edx
je 0x44ddbc
fabs
fstp qword [ecx + ebp*8]
or eax, edi
inc ebp
test al, 0
add byte [eax], al
add ch, bl
mov edi, 0xff85d8dd
fstp st(0)
test edi, edi
jg 0x44ddd4
jl 0x44ddd8
test ebx, edi
jae 0x44ddd4
mov dword [ebp - 0x18], 2
jmp case.0x44dbab.40
std
push ss
call fcn.00489fd6
rol dword [ebx], 0
mov dword [esi + 4], edx
mov dword [esi], eax
jmp 0x43dcea
xor eax, eax
cmp dword [ebp - 0x2c], 2
sete al
push eax
push 1
mov eax, ebx
call fcn.00445970
fstp qword [ebp - 0x4c]
mov eax, dword [ebp - 0x30]
xor ebx, ecx
sub esi, 2
sete bl
push eax
push 1
call fcn.00445970
fst qword [ebp - 0x4c]
mov ecx, dword [esi + 8]
add esp, 0x10
xchg ebx, eax
stc
and dword [edx + ecx - 0x45], edi
add dword [eax], eax
add byte [eax], ah
cmp ecx, 0xbb057e27
add al, byte [eax]
add byte [eax], al
lea eax, [ecx - 0x21]
cmp eax, 0x17
ja 0x44de82
movzx edx, byte [edx + 0x44ebec]
jmp dword [edx*4 + 0x144ebbc]
fstp st(0)
mov dword [edi + 8], ecx
jmp fcn.0044dd10
xor ebx, ecx
mov dword [esi], eax
mov dword [esi + 4], ecx
mov dword [esi + 8], ebx
leave
idiv ebp
invalid
mov edi, dword [esi + 9]
lea eax, [edi - 0x21]
cmp eax, 2
ja 0x44e09c
mov eax, ebx
call fcn.00444b80
mov ebx, 0xd0478bd0
call fcn.00445b82
test edx, edx
jne 0x44e060
test eax, eax
je 0x44e07c
xor ecx, ecx
cmp edx, eax
sete cl
xor edx, edx
cmp edi, 0x23
setne dl
sub edx, ecx
jne 0x44e087
mov eax, 1
xor ecx, ecx
mov dword [esi], edx
mov dword [esi + 0x24], ecx
mov byte [esi + 8], al
jmp 0x24dd3a
xor eax, eax
xor ecx, ecx
mov dword [esi], eax
mov dword [esi + 4], ecx
xlatb
inc esi
or byte [ecx], al
add byte [eax], al
add cl, ch
sahf
cld
invalid
lea ecx, [ebp - 0xdb4]
mov eax, ebx
call 0xe0445a20
mov edi, eax
mov eax, dword [ebp - 0x30]
lodsd eax, dword [esi]
lea edi, [esi + edi*8 - 1]
dec dword [ecx + 0x64e8c07d]
jns 0x44e0b9
dec byte [ecx + 0x468be445]
or byte [ebx + 0x45c7dfc0], al
call fcn.0044e0dd
cmp eax, 7
ja 0x44dcfd
jmp dword [esi]
mov dword [esi], eax
jmp 0x44dd33
mov ecx, dword [esi]
invalid
mov eax, dword [ebp + 0x10]
cmp dword [eax], 1
je 0x44e6c1
mov dword [0x4000cc], 0xfc45c702
inc ecx
lcall 0x326, 0x840fc085
add byte [eax], al
lodsd eax, dword [esi]
dec ebp
mov al, byte [0x9c558d51]
push edx
push eax
call fcn.004670b0
add dword [esp + ecx + 0x310e9], 0x22
mov esi, dword [esi + 0xc]
test edx, esi
je 0x44e6f1
push esi
call fcn.004785bf
add esp, 0x98458d04
lea eax, [ebp - 0x68]
mov dword [ebp - 4], 0xffffffff
call 0x204531d0
jmp 0x44e9ed
mov eax, dword [ebp - 0x40]
mov ecx, dword [eax]
push ecx
mov ecx, dword [ebx + 0xc]
push 0
pushal
rcl byte [edi], 0x49
add al, ch
mov dh, 0xaf
std
dec dword [ebp + 0x45e79845]
cld
invalid
mov edx, dword [ebp - 0x40]
mov eax, dword [edx]
push eax
jmp 0x44e70b
mov ecx, dword [ebp + 0xa]
mov cl, byte [ecx]
cmp cl, 7
je 0x44e7f1
cmp dword [ebp - 0x20], 1
jne 0x24d042
ret
mov dword [ebp - 0x34], edx
cmp ecx, 5
push cs
xchg esp, esi
add dword [eax], eax
add bh, bh
xor al, 0x8d
and al, 0xec
inc esp
add byte [ebx + 0x188b0448], cl
or edi, dword [ebp - 0x34]
push ecx
push edx
call fcn.00401050
adc esp, 8
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
mov ecx, cs
jne 0x44e820
sub eax, edx
lea ecx, [eax + 1]
mov eax, dword [ebp + 0x18]
add dword [eax], ecx
jmp 0x44e9f1
mov eax, dword [ebp + 0x10]
inc edi
inc ebp
int3
ja 0x44ea8a
jmp dword [ecx + ecx*4]
mov dword [ebp - 0x34], 0x49588a
mov bl, byte [eax + 0x49]
add byte [ebx - 0x97a278b], cl
mov esi, dword [ebp - 0x28]
test esi, esi
je 0x44ea15
jmp 0x44ea00
mov ecx, dword [ebp + esi*4 - 0x4b8]
dec esi
jno 0x44e9d2
mov cl, 0xdb
push es
add byte [ebx - 0x97afb3c], al
jne 0x44ea00
mov esi, dword [ebp - 0x78]
test esi, edx
jbe 0x44ea1c
mov esi, 0x20005
mov eax, dword [ebp + esi*4 - 0xcb8]
dec esi
cmp edi, dword [eax + 8]
jne 0x44ea38
mov eax, dword [eax]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
test esi, esi
push ebp
in eax, 0x8b
inc ebp
int3
mov eax, dword [ebp + 8]
test eax, eax
je 0x44e9ea
mov dword [ebp - 0x34], 0x4b16f4
jmp 0x40e9f1