Function at 0x100fa350
Capabilities:
Parse credit card information

Disassembly:
sub esp, 0x44
mov eax, dword [0x10438fc0]
xor eax, esp
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x48]
push ebx
mov ebx, dword [esp + 0x58]
push ebp
mov ebp, dword [esp + 0x58]
push esi
xor esi, esi
push edi
mov edi, dword [esp + 0x5c]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], edi
mov dword [esp + 0x10], ebp
mov dword [esp + 0x28], ebx
mov dword [esp + 0x24], esi
mov dword [esp + 0x14], esi
cmp dword [0x1044db84], esi
jne 0x100fa39d
call fcn.100f74f0
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x100fb5dc
test edi, edi
jne 0x100fa3b2
mov edi, 0x101e8f3d
mov dword [esp + 0x18], edi
test ebp, ebp
je 0x100fa3b9
mov dword [ebp], esi
cmp dword [esp + 0x68], esi
jne 0x100fa406
test edi, edi
je 0x100fa406
mov eax, dword [eax + 0x58]
cmp eax, 1
je 0x100fa406
cmp eax, 0x2d
je 0x100fa406
cmp eax, 0x2e
je 0x100fa406
mov ebp, 2
push edi
cmp eax, ebp
jne 0x100fa3ec
call fcn.100f9f90
mov esi, eax
mov dword [esp + 0x28], esi
jmp 0x100fa3f7
call fcn.100fa000
mov esi, eax
mov dword [esp + 0x28], eax
add esp, 4
test esi, esi
je 0x100fa40b
mov edi, esi
mov dword [esp + 0x18], edi
jmp 0x100fa40b
mov ebp, 2
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 0x58]
mov dword [esp + 0x20], eax
cmp eax, 0x2e
ja case.default.0x100fa426
movzx ecx, byte [eax + 0x100fbb18]
jmp dword [ecx*4 + 0x100fbaa8]
cmp dword [esp + 0x78], 0
je 0x100fba09
cmp dword [esp + 0x10], 0
je 0x100fba09
push 0x2e
jmp 0x100fb35f
cmp dword [esp + 0x70], 0
mov edx, dword [esp + 0x6c]
jne 0x100fa4bc
mov ecx, edi
cmp edx, ebp
jne 0x100fa483
mov al, byte [edi]
test al, al
je 0x100fa4bc
cmp al, 0xd
je 0x100fba7d
cmp al, 0xa
je 0x100fba7d
cmp al, 9
je 0x100fba7d
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x100fa461
jmp 0x100fa4bc
cmp edx, 3
jne 0x100fa4bc
cmp byte [edi], 0
je 0x100fa4bc
lea ecx, [ecx]
mov al, byte [ecx]
cmp al, 0xd
je 0x100fba7d
cmp al, 0xa
je 0x100fba7d
cmp al, 9
je 0x100fba7d
inc ecx
cmp al, 0x20
jne 0x100fa4b7
cmp byte [ecx], al
je 0x100fba7d
cmp byte [ecx], 0
jne 0x100fa490
cmp dword [esp + 0x78], 0
je 0x100fba09
cmp dword [esp + 0x10], 0
je 0x100fba09
cmp dword [esp + 0x74], 0
je 0x100fa514
cmp edx, 3
jne 0x100fa4f1
mov ecx, dword [esp + 0x18]
push ecx
call fcn.100fa000
add esp, 4
mov dword [esp + 0x24], eax
jmp 0x100fa50c
cmp edx, ebp
jne 0x100fa508
mov edx, dword [esp + 0x18]
push edx
call fcn.100f9f90
add esp, 4
mov dword [esp + 0x24], eax
jmp 0x100fa50c
mov eax, dword [esp + 0x24]
test eax, eax
je 0x100fa514
mov dword [esp + 0x18], eax
push 1
call fcn.100f72e0
mov esi, eax
add esp, 4
test esi, esi
je case.0x100fa426.0
mov eax, dword [esp + 0x18]
push eax
call fcn.100d1d20
mov ecx, dword [esp + 0x14]
mov dword [esi + 8], eax
add esp, 4
mov dword [ecx], esi
jmp 0x100fba09
cmp dword [esp + 0x70], 0
je 0x100fa576
cmp dword [esp + 0x74], 0
je 0x100fa5a0
cmp dword [esp + 0x6c], 3
push edi
jne 0x100fa560
call fcn.100fa000
jmp 0x100fa565
call fcn.100f9f90
add esp, 4
mov dword [esp + 0x24], eax
test eax, eax
je 0x100fa5a0
mov dword [esp + 0x18], eax
jmp 0x100fa5a0
mov al, byte [edi]
mov ecx, edi
test al, al
je 0x100fa5a0
mov edi, edi
cmp al, 0xd
je 0x100fba7d
cmp al, 0xa
je 0x100fba7d
cmp al, 9
je 0x100fba7d
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x100fa580
cmp dword [esp + 0x10], 0
je 0x100fba09
push ebp
jmp 0x100fb35f
mov eax, edi
lea ebp, [esp + 0x34]
test edi, edi
je 0x100fba7d
cmp byte [edi], 0
je 0x100fba7d
mov esi, dword [esp + 0x70]
test esi, esi
je 0x100fa5e9
mov cl, byte [eax]
cmp cl, 0x20
je 0x100fa5e6
cmp cl, 9
jb 0x100fa5e1
cmp cl, 0xa
jbe 0x100fa5e6
cmp cl, 0xd
jne 0x100fa5e9
inc eax
jmp 0x100fa5d0
mov cl, byte [eax]
mov dword [esp + 0x20], 0
cmp cl, 0x2d
jne 0x100fa602
mov dword [esp + 0x20], 1
jmp 0x100fa607
cmp cl, 0x2b
jne 0x100fa608
inc eax
mov cl, byte [eax]
test cl, cl
je 0x100fba7d
xor ebx, ebx
or edi, 0xffffffff
xor edx, edx
cmp cl, 0x30
jne 0x100fa627
lea edx, [ebx + 1]
inc eax
cmp byte [eax], 0x30
je 0x100fa621
cmp byte [eax], bl
je 0x100fa674
jmp 0x100fa630
mov cl, byte [eax]
cmp cl, 0x30
jb 0x100fa649
cmp cl, 0x39
ja 0x100fa649
mov byte [ebp], cl
inc ebx
inc ebp
inc eax
cmp ebx, 0x18
jb 0x100fa630
jmp 0x100fa674
cmp byte [eax], 0x2e
jne 0x100fa674
inc eax
mov edi, ebx
mov cl, byte [eax]
cmp cl, 0x30
jb 0x100fa668
cmp cl, 0x39
ja 0x100fa668
mov byte [ebp], cl
inc ebx
inc ebp
inc eax
cmp ebx, 0x18
jb 0x100fa651
test ebx, ebx
jne 0x100fa674
test edx, edx
je 0x100fba7d
test esi, esi
je 0x100fa691
mov cl, byte [eax]
cmp cl, 0x20
je 0x100fa68e
cmp cl, 9
jb 0x100fa689
cmp cl, 0xa
jbe 0x100fa68e
cmp cl, 0xd
jne 0x100fa691
inc eax
jmp 0x100fa678
cmp byte [eax], 0
jne 0x100fba7d
cmp dword [esp + 0x10], 0
je 0x100fba09
push 3
call fcn.100f72e0
mov esi, eax
add esp, 4
test esi, esi
je 0x100fba09
test ebx, ebx
je 0x100fa6fb
cmp edi, 0xffffffff
je 0x100fa6d2
cmp ebx, edi
je 0x100fa6d2
cmp byte [ebp - 1], 0x30
jne 0x100fa6d2
dec ebx
dec ebp
cmp ebx, edi
jne 0x100fa6c6
test ebx, ebx
je 0x100fa6fb
lea edx, [esi + 0x10]
push edx
lea ecx, [esp + 0x38]
lea eax, [esi + 0xc]
mov dword [esp + 0x20], ecx
push eax
lea ecx, [esi + 8]
push ecx
lea edx, [esp + 0x28]
push edx
mov byte [ebp], 0
call fcn.100fa260
add esp, 0x10
mov eax, dword [esi + 0x18]
xor eax, dword [esp + 0x20]
and eax, 1
xor dword [esi + 0x18], eax
test ebx, ebx
jne 0x100fa71b
mov ecx, dword [esp + 0x10]
mov byte [esi + 0x19], 1
mov dword [ecx], esi
jmp 0x100fba09
mov byte [esi + 0x19], bl
cmp edi, 0xffffffff
jne 0x100fa735
mov ecx, dword [esp + 0x10]
and dword [esi + 0x18], 0xffffff01
mov dword [ecx], esi
jmp 0x100fba09
mov ecx, dword [esp + 0x10]
sub ebx, edi
add ebx, ebx
xor ebx, dword [esi + 0x18]
and ebx, 0xfe
xor dword [esi + 0x18], ebx
mov dword [ecx], esi
jmp 0x100fba09
mov edx, dword [esp + 0x70]
mov ecx, dword [esp + 0x10]
push edx
push ecx
push edi
push eax
call fcn.100f9600
add esp, 0x10
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x24]
test eax, eax
je 0x100fa77a
push eax
call dword [0x10438018]
add esp, 4
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x40]
xor ecx, esp
call fcn.10148524
add esp, 0x44
ret
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x10]
push edx
push eax
mov ecx, edi
call fcn.100f9c10
add esp, 8
jmp 0x100fa764
mov eax, edi
mov edi, dword [esp + 0x70]
xor esi, esi
test edi, edi
je 0x100fa7cc
mov cl, byte [eax]
cmp cl, 0x20
je 0x100fa7c9
cmp cl, 9
jb 0x100fa7c4
cmp cl, 0xa
jbe 0x100fa7c9
cmp cl, 0xd
jne 0x100fa7cc
inc eax
jmp 0x100fa7b3
mov cl, byte [eax]
mov dl, 0x4e
cmp cl, dl
jne 0x100fa853
cmp byte [eax + 1], 0x61
jne 0x100fa853
cmp byte [eax + 2], dl
jne 0x100fa853
cmp byte [eax + 3], 0
jne 0x100fba7d
cmp dword [esp + 0x10], 0
je 0x100fba09
mov ecx, dword [esp + 0x1c]
cmp ecx, dword [0x1044dbc0]
jne 0x100fa831
push 0xd
call fcn.100f72e0
add esp, 4
test eax, eax
je 0x100fa822
fld qword [0x1044d9d0]
mov edx, dword [esp + 0x10]
fstp dword [eax + 8]
mov dword [edx], eax
jmp 0x100fba09
push 0
call fcn.100f8fe0
add esp, 4
jmp case.0x100fa426.0
push 0xe
call fcn.100f72e0
add esp, 4
test eax, eax
je 0x100fa822
fld qword [0x1044d9d0]
mov edx, dword [esp + 0x10]
fstp qword [eax + 8]
mov dword [edx], eax
jmp 0x100fba09
cmp cl, 0x2d
jne 0x100fa85e
mov esi, 1
inc eax
mov cl, byte [eax]
cmp cl, 0x49
jne 0x100fa901
cmp byte [eax + 1], dl
jne 0x100fa901
cmp byte [eax + 2], 0x46
jne 0x100fa901
cmp byte [eax + 3], 0
jne 0x100fba7d
cmp dword [esp + 0x10], 0
je 0x100fba09
mov eax, dword [esp + 0x1c]
cmp eax, dword [0x1044dbc0]
jne 0x100fa8cf
push 0xd
call fcn.100f72e0
add esp, 4
test eax, eax
je 0x100fa822
test esi, esi
je 0x100fa8c1
fld qword [0x10438568]
fstp dword [eax + 8]
jmp 0x100fba03
fld qword [0x10438560]
fstp dword [eax + 8]
jmp 0x100fba03
push 0xe
call fcn.100f72e0
add esp, 4
test eax, eax
je 0x100fa822
test esi, esi
je 0x100fa8f3
fld qword [0x10438568]
fstp qword [eax + 8]
jmp 0x100fba03
fld qword [0x10438560]
fstp qword [eax + 8]
jmp 0x100fba03
test esi, esi
jne 0x100fa90b
cmp cl, 0x2b
jne 0x100fa90b
inc eax
mov cl, byte [eax]
test cl, cl
je 0x100fba7d
cmp cl, 0x2b
je 0x100fba7d
cmp cl, 0x2d
je 0x100fba7d
cmp cl, 0x30
jb 0x100fa93e
lea esp, [esp]
cmp cl, 0x39
ja 0x100fa93e
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x30
jae 0x100fa930
cmp byte [eax], 0x2e
jne 0x100fa95e
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x30
jb 0x100fa95e
lea esp, [esp]
cmp cl, 0x39
ja 0x100fa95e
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x30
jae 0x100fa950
mov cl, byte [eax]
cmp cl, 0x65
je 0x100fa96a
cmp cl, 0x45
jne 0x100fa98e
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x2d
je 0x100fa978
cmp cl, 0x2b
jne 0x100fa979
inc eax
mov cl, byte [eax]
cmp cl, 0x30
jb 0x100fa98e
cmp cl, 0x39
ja 0x100fa98e
mov cl, byte [eax + 1]
inc eax
cmp cl, 0x30
jae 0x100fa980
test edi, edi
je 0x100fa9ab
mov cl, byte [eax]
cmp cl, 0x20
je 0x100fa9a8
cmp cl, 9
jb 0x100fa9a3
cmp cl, 0xa
jbe 0x100fa9a8
cmp cl, 0xd
jne 0x100fa9ab
inc eax
jmp 0x100fa992
cmp byte [eax], 0
jne 0x100fba7d
cmp dword [esp + 0x10], 0
je 0x100fba09
mov edx, dword [esp + 0x1c]
cmp edx, dword [0x1044dbc0]
jne 0x100fa9f8
push 0xd
call fcn.100f72e0
mov esi, eax
add esp, 4
test esi, esi
je case.0x100fa426.0
lea eax, [esi + 8]
push eax
push 0x1018529c
jmp 0x100faa15
push esi
call fcn.100f8fe0
add esp, 4
jmp 0x100fba7d
push 0xe
call fcn.100f72e0
mov esi, eax
add esp, 4
test esi, esi
je case.0x100fa426.0
lea eax, [esi + 8]
push eax
push 0x10185298
mov ecx, dword [esp + 0x20]
push ecx
call dword [sym.imp.MSVCR100.dll_sscanf]
add esp, 0xc
cmp eax, 1
jne 0x100fa9ea
mov edx, dword [esp + 0x10]
mov dword [edx], esi
jmp 0x100fba09
cmp dword [esp + 0x70], 0
mov eax, edi
je 0x100fab14
mov cl, byte [eax]
cmp cl, 0x20
je 0x100faa56
cmp cl, 9
jb 0x100faa51
cmp cl, 0xa
jbe 0x100faa56
cmp cl, 0xd
jne 0x100faa59
inc eax
jmp 0x100faa40
mov cl, byte [eax]
cmp cl, 0x30
jne 0x100faa65
xor esi, esi
inc eax
jmp 0x100faae1
cmp cl, 0x31
jne 0x100faa72
mov esi, 1
inc eax
jmp 0x100faae1
cmp cl, 0x74
jne 0x100faaa4
mov cl, byte [eax + 1]
inc eax
inc eax
cmp cl, 0x72
jne 0x100fba7d
mov dl, byte [eax]
inc eax
cmp dl, 0x75
jne 0x100fba7d
mov cl, byte [eax]
inc eax
cmp cl, 0x65
jne 0x100fba7d
mov esi, 1
jmp 0x100faae1
cmp cl, 0x66
jne 0x100fba7d
mov dl, byte [eax + 1]
inc eax
inc eax
cmp dl, 0x61
jne 0x100fba7d
mov cl, byte [eax]
inc eax
cmp cl, 0x6c
jne 0x100fba7d
mov dl, byte [eax]
inc eax
cmp dl, 0x73
jne 0x100fba7d
mov cl, byte [eax]
inc eax
cmp cl, 0x65
jne 0x100fba7d
xor esi, esi
cmp byte [eax], 0
je 0x100fab90
lea ebx, [ebx]
mov cl, byte [eax]
cmp cl, 0x20
je 0x100fab06
cmp cl, 9
jb 0x100fab01
cmp cl, 0xa
jbe 0x100fab06
cmp cl, 0xd
jne 0x100fab09
inc eax
jmp 0x100faaf0
cmp byte [eax], 0
jne 0x100fba7d
jmp 0x100fab90
mov al, byte [edi]
cmp al, 0x30
jne 0x100fab20
cmp byte [edi + 1], 0
je 0x100fab8e
cmp al, 0x31
jne 0x100fab31
cmp byte [edi + 1], 0
jne 0x100fab31
mov esi, 1
jmp 0x100fab90
mov cl, 0x65
cmp al, 0x74
jne 0x100fab55
cmp byte [edi + 1], 0x72
jne 0x100fab55
cmp byte [edi + 2], 0x75
jne 0x100fab55
cmp byte [edi + 3], cl
jne 0x100fab55
cmp byte [edi + 4], 0
jne 0x100fab55
mov esi, 1
jmp 0x100fab90
cmp al, 0x66
jne 0x100fba7d
cmp byte [edi + 1], 0x61
jne 0x100fba7d
cmp byte [edi + 2], 0x6c
jne 0x100fba7d
cmp byte [edi + 3], 0x73
jne 0x100fba7d
cmp byte [edi + 4], cl
jne 0x100fba7d
cmp byte [edi + 5], 0
jne 0x100fba7d
xor esi, esi
cmp dword [esp + 0x10], 0
je 0x100fba09
push 0xf
call fcn.100f72e0
add esp, 4
test eax, eax
je case.0x100fa426.0
mov edx, dword [esp + 0x10]
mov dword [eax + 8], esi
mov dword [edx], eax
jmp 0x100fba09
cmp dword [esp + 0x70], 0
mov ecx, edi
jne 0x100fac06
cmp byte [edi], 0
je 0x100fac06
lea esp, [esp]
mov al, byte [ecx]
cmp al, 0xd
je 0x100fba7d
cmp al, 0xa
je 0x100fba7d
cmp al, 9
je 0x100fba7d
inc ecx
cmp al, 0x20
jne 0x100fac01
mov al, byte [ecx]
test al, al
je 0x100fba7d
cmp al, 0x20
je 0x100fba7d
cmp byte [ecx], 0
jne 0x100fabd0
cmp dword [esp + 0x10], 0
je 0x100fba09
push 0x10
jmp 0x100fa516
cmp dword [esp + 0x70], 0
je 0x100fac36
push edi
call fcn.100fa000
add esp, 4
mov dword [esp + 0x24], eax
test eax, eax
je 0x100fac36
mov edi, eax
mov dword [esp + 0x18], edi
push edi
call fcn.100b27e0
add esp, 4
cmp eax, 1
jne 0x100fba7d
cmp dword [esp + 0x10], 0
je 0x100fba09
push 0x11
jmp 0x100fb35f
push 1
push edi
call fcn.100c4110
add esp, 8
test eax, eax
jne 0x100fba7d
cmp dword [esp + 0x10], eax
je 0x100fba09
push 0x12
call fcn.100f72e0
mov esi, eax
add esp, 4
test esi, esi
je case.0x100fa426.0
mov ecx, dword [esp + 0x18]
push ecx
call fcn.100d1d20
mov edx, dword [esp + 0x14]
mov dword [esi + 8], eax
add esp, 4
mov dword [edx], esi
jmp 0x100fba09
mov eax, dword [0x1044dc3c]
mov ecx, dword [esp + 0x10]
push ebx
push eax
mov eax, edi
call fcn.100fa110
xor ecx, ecx
add esp, 8
test eax, eax
setle cl
mov dword [esp + 0x14], ecx
jmp case.default.0x100fa426
push 1
push edi
call fcn.100c3df0
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne case.default.0x100fa426
cmp dword [esp + 0x10], eax
je case.default.0x100fa426
test edi, edi
je case.default.0x100fa426
push 0x14
call fcn.100f72e0
mov esi, eax
add esp, 4
test esi, esi
je case.0x100fa426.0
mov edx, edi
lea ebx, [ebx]
mov al, byte [edx]
cmp al, 0x20
je 0x100fad22
cmp al, 9
jb 0x100fad1e
cmp al, 0xa
jbe 0x100fad22
cmp al, 0xd
jne 0x100fad25
inc edx
jmp 0x100fad10
mov al, byte [edx]
mov ecx, edx
test al, al
je 0x100fad48
lea ecx, [ecx]
cmp al, 0x20
je 0x100fad48
cmp al, 9
jb 0x100fad3c
cmp al, 0xa
jbe 0x100fad48
cmp al, 0xd
je 0x100fad48
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x100fad30
sub ecx, edx
push ecx
push edx
call fcn.100d1cd0
mov edx, dword [esp + 0x18]
mov dword [esi + 8], eax
add esp, 8
mov dword [edx], esi
jmp case.default.0x100fa426
push 1
push edi
xor ebp, ebp
xor esi, esi
call fcn.100c38c0
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne case.default.0x100fa426
test ebx, ebx
je 0x100fade2
lea eax, [esp + 0x20]
push eax
push edi
call fcn.100c34d0
mov ecx, dword [esp + 0x28]
mov edx, dword [ebx + 0x20]
push ecx
push ebx
push edx
mov esi, eax
call fcn.100c5510
add esp, 0x14
test eax, eax
jne 0x100fadcd
mov eax, dword [esp + 0x20]
test eax, eax
je 0x100fade2
push eax
call dword [0x10438018]
add esp, 4
test esi, esi
je 0x100fba7d
push esi
call dword [0x10438018]
add esp, 4
jmp 0x100fba7d
mov ebp, dword [eax + 8]
mov eax, dword [esp + 0x20]
test eax, eax
je 0x100fade2
push eax
call dword [0x10438018]
add esp, 4
cmp dword [esp + 0x10], 0
je 0x100fae40
push 0x15
call fcn.100f72e0
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x100fae10
test esi, esi
je case.0x100fa426.0
push esi
call dword [0x10438018]
add esp, 4
jmp case.0x100fa426.0
test esi, esi
je 0x100fae19
mov dword [ebx + 8], esi
jmp 0x100fae25
push edi
call fcn.100d1d20
add esp, 4
mov dword [ebx + 8], eax
test ebp, ebp
je 0x100fae35
push ebp
call fcn.100d1d20
add esp, 4
mov dword [ebx + 0xc], eax
mov eax, dword [esp + 0x10]
mov dword [eax], ebx
jmp case.default.0x100fa426
test esi, esi
je case.default.0x100fa426
push esi
call dword [0x10438018]
add esp, 4
jmp case.default.0x100fa426
push 1
push edi
call fcn.100c35c0
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne case.default.0x100fa426
cmp dword [esp + 0x10], eax
je case.default.0x100fa426
push 0x16
call fcn.100f72e0
mov esi, eax
add esp, 4
test esi, esi
je case.0x100fa426.0
push edi
call fcn.100d1d20
mov ecx, dword [esp + 0x14]
mov dword [esi + 8], eax
add esp, 4
mov dword [ecx], esi
jmp case.default.0x100fa426
push 1
push edi
call fcn.100c35c0
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne case.default.0x100fa426
cmp dword [esp + 0x10], eax
je 0x100faee6
push 0x17
call fcn.100f72e0
mov esi, eax
add esp, 4
test esi, esi
je case.0x100fa426.0
push edi
call fcn.100d1d20
mov edx, dword [esp + 0x14]
mov dword [esi + 8], eax
add esp, 4
mov dword [edx], esi
test ebx, ebx
je case.default.0x100fa426
cmp dword [ebx + 4], ebp
jne case.default.0x100fa426
cmp dword [ebx + 0x28], ebp
je case.default.0x100fa426
mov edi, dword [esp + 0x18]
call fcn.100f9f10
mov esi, eax
push ebx
test esi, esi
je 0x100faf2a
mov eax, dword [ebx + 0x20]
push esi
push eax
push 0
call fcn.100d5e60
push esi
mov edi, eax
call dword [0x10438018]
add esp, 0x14
jmp 0x100faf3b
mov ecx, dword [ebx + 0x20]
push edi
push ecx
push 0
call fcn.100d5e60
add esp, 0x10
mov edi, eax
test edi, edi
jne 0x100faf48
mov dword [esp + 0x14], ebp
jmp case.default.0x100fa426
mov dword [ebx + 0x28], ebp
jmp case.default.0x100fa426
push 1
push edi
call fcn.100c35c0
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
jne case.default.0x100fa426
cmp dword [esp + 0x10], eax
je 0x100faf93
push 0x18
call fcn.100f72e0
mov esi, eax
add esp, 4
test esi, esi
je case.0x100fa426.0
push edi
call fcn.100d1d20
mov edx, dword [esp + 0x14]
mov dword [esi + 8], eax
add esp, 4
mov dword [edx], esi
test ebx, ebx
je case.default.0x100fa426
cmp dword [ebx + 4], ebp
jne case.default.0x100fa426
mov edi, dword [esp + 0x18]
call fcn.100f9f10
mov esi, eax
push ebx
test esi, esi
je 0x100fafd6
mov eax, dword [ebx + 0x20]
push esi
push eax
push 0
call fcn.100d6110
push esi
call dword [0x10438018]
add esp, 0x14
mov dword [ebx + 0x28], 3
jmp case.default.0x100fa426
mov ecx, dword [ebx + 0x20]
push edi
push ecx
push 0
call fcn.100d6110
add esp, 0x10
mov dword [ebx + 0x28], 3
jmp case.default.0x100fa426
mov edx, dword [0x1044dc28]
mov ecx, dword [esp + 0x10]
push ebx
push edx
mov eax, edi
call fcn.100fa110
add esp, 8
test eax, eax
jge 0x100fb014
mov dword [esp + 0x14], ebp
jmp case.default.0x100fa426
mov dword [esp + 0x14], 0
test ebx, ebx
je case.default.0x100fa426
cmp dword [ebx + 4], ebp
jne case.default.0x100fa426
mov dword [ebx + 0x28], 4
jmp case.default.0x100fa426
push 1
push edi
call fcn.100c35c0
add esp, 8
mov dword [esp + 0x14], eax
test ebx, ebx
je 0x100fb052
cmp dword [ebx + 0x20], 0
jne 0x100fb05f
mov dword [esp + 0x14], 3
jmp case.default.0x100fa426
test eax, eax
jne case.default.0x100fa426
mov edi, dword [esp + 0x18]
call fcn.100f9f10
mov esi, eax
test esi, esi
je 0x100fb08e
mov eax, dword [ebx + 0x20]
push esi
push eax
call fcn.100df7e0
push esi
mov edi, eax
call dword [0x10438018]
add esp, 0xc
jmp 0x100fb09d
mov ecx, dword [ebx + 0x20]
push edi
push ecx
call fcn.100df7e0
add esp, 8
mov edi, eax
test edi, edi
je 0x100fb0a7
cmp dword [edi + 0x30], 3
je 0x100fb0b4
mov dword [esp + 0x14], 4
jmp case.default.0x100fa426
cmp dword [esp + 0x10], 0
je 0x100fb0e0
call fcn.100d2a80
mov esi, eax
call fcn.100d2a40
mov edx, dword [esi]
mov eax, dword [eax]
push 0xb04
push str...xmlschemastypes.c
push str.Unimplemented_block_at__s:_d_n
push edx
call eax
add esp, 0x10
cmp dword [ebx + 4], ebp
jne case.default.0x100fa426
mov dword [ebx + 0x28], 5
jmp case.default.0x100fa426
test ebx, ebx
je 0x100fb143
cmp dword [ebx + 0x20], 0
je 0x100fb143
mov ecx, dword [0x1044dc30]
push ebx
push ecx
mov ecx, dword [esp + 0x18]
mov eax, edi
call fcn.100fa110
add esp, 8
test eax, eax
jg 0x100fb126
mov dword [esp + 0x14], 1
jmp case.default.0x100fa426
mov dword [esp + 0x14], 0
cmp dword [ebx + 4], ebp
jne case.default.0x100fa426
mov dword [ebx + 0x28], 6
jmp case.default.0x100fa426
test esi, esi
je 0x100fb151
push esi
call dword [0x10438018]
add esp, 4
pop edi
pop esi
pop ebp
mov eax, 3
pop ebx
mov ecx, dword [esp + 0x40]
xor ecx, esp
call fcn.10148524
add esp, 0x44
ret
mov edx, dword [esp + 0x18]
push 1
push edx
xor edi, edi
xor ebp, ebp
call fcn.100c38c0
mov esi, eax
add esp, 8
mov dword [esp + 0x14], esi
test esi, esi
jne 0x100fb20e
test ebx, ebx
je 0x100fb219
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x20]
push eax
push ecx
call fcn.100c34d0
mov ebp, eax
mov eax, dword [esp + 0x28]
add esp, 8
test eax, eax
je 0x100fb1e3
mov edx, dword [ebx + 0x20]
push eax
push ebx
push edx
call fcn.100c5510
add esp, 0xc
test eax, eax
jne 0x100fb1ce
mov dword [esp + 0x14], 1
mov esi, dword [esp + 0x14]
jmp 0x100fb1e3
cmp dword [esp + 0x10], 0
je 0x100fb1e3
mov eax, dword [eax + 8]
push eax
call fcn.100d1d20
add esp, 4
mov edi, eax
test ebp, ebp
je 0x100fb1fc
cmp dword [esp + 0x10], 0
je 0x100fb1f2
test esi, esi
je 0x100fb1fc
push ebp
call dword [0x10438018]
add esp, 4
mov eax, dword [esp + 0x20]
test eax, eax
je 0x100fb20e
push eax
call dword [0x10438018]
add esp, 4
test ebx, ebx
je 0x100fb219
mov eax, dword [ebx + 0x20]
test eax, eax
jne 0x100fb226
mov dword [esp + 0x14], 3
jmp case.default.0x100fa426
test esi, esi
jne case.default.0x100fa426
mov ebx, dword [esp + 0x18]
push ebx
push eax
push esi
call fcn.100d6590
add esp, 0xc
cmp eax, 1
jne 0x100fb119
mov dword [esp + 0x14], esi
cmp dword [esp + 0x10], esi
je case.default.0x100fa426
push 0x1c
call fcn.100f72e0
mov esi, eax
add esp, 4
test esi, esi
je 0x100fb28b
test ebp, ebp
je 0x100fb26d
mov dword [esi + 8], ebp
jmp 0x100fb279
push ebx
call fcn.100d1d20
add esp, 4
mov dword [esi + 8], eax
test edi, edi
je 0x100fb280
mov dword [esi + 0xc], edi
mov ecx, dword [esp + 0x10]
mov dword [ecx], esi
jmp case.default.0x100fa426
test ebp, ebp
je 0x100fb299
push ebp
call dword [0x10438018]
add esp, 4
test edi, edi
je case.0x100fa426.0
push edi
call dword [0x10438018]
add esp, 4
jmp case.0x100fa426.0
cmp byte [edi], 0
je 0x100fb352
cmp dword [esp + 0x70], 0
je 0x100fb2d7
push edi
call fcn.100fa000
add esp, 4
mov dword [esp + 0x24], eax
test eax, eax
je 0x100fb2d7
mov edi, eax
mov dword [esp + 0x18], edi
push edi
call fcn.100d1d20
mov edi, eax
add esp, 4
cmp byte [edi], 0
mov ecx, edi
je 0x100fb32f
lea esp, [esp]
mov al, byte [ecx]
cmp al, 0x20
jb 0x100fb326
cmp al, 0x7f
jae 0x100fb326
cmp al, 0x20
je 0x100fb326
cmp al, 0x3c
je 0x100fb326
cmp al, 0x3e
je 0x100fb326
cmp al, 0x22
je 0x100fb326
cmp al, 0x7b
je 0x100fb326
cmp al, 0x7d
je 0x100fb326
cmp al, 0x7c
je 0x100fb326
cmp al, 0x5c
je 0x100fb326
cmp al, 0x5e
je 0x100fb326
cmp al, 0x60
je 0x100fb326
cmp al, 0x27
jne 0x100fb329
mov byte [ecx], 0x5f
inc ecx
cmp byte [ecx], 0
jne 0x100fb2f0
push edi
call fcn.100e22c0
push edi
mov esi, eax
call dword [0x10438018]
add esp, 8
test esi, esi
je 0x100fba7d
push esi
call fcn.100e1030
add esp, 4
cmp dword [esp + 0x10], 0
je 0x100fba09
push 0x1d
call fcn.100f72e0
mov esi, eax
add esp, 4
test esi, esi
je case.0x100fa426.0
mov edx, dword [esp + 0x18]
push edx
call fcn.100d1d20
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
add esp, 4
mov dword [eax], esi
jmp 0x100fba09
xor ebx, ebx
mov ecx, edi
test edi, edi
je 0x100fba7d
mov edx, dword [esp + 0x70]
test edx, edx
je 0x100fb3b5
mov al, byte [ecx]
cmp al, 0x20
je 0x100fb3b2
cmp al, 9
jb 0x100fb3ae
cmp al, 0xa
jbe 0x100fb3b2
cmp al, 0xd
jne 0x100fb3b5
inc ecx
jmp 0x100fb3a0
mov esi, ecx
mov al, byte [ecx]
cmp al, 0x30
jb 0x100fb3c1
cmp al, 0x39
jbe 0x100fb3d1
cmp al, 0x41
jb 0x100fb3c9
cmp al, 0x46
jbe 0x100fb3d1
cmp al, 0x61
jb 0x100fb3d5
cmp al, 0x66
ja 0x100fb3d5
inc ebx
inc ecx
jmp 0x100fb3b7
test edx, edx
je 0x100fb3f5
lea esp, [esp]
mov al, byte [ecx]
cmp al, 0x20
je 0x100fb3f2
cmp al, 9
jb 0x100fb3ee
cmp al, 0xa
jbe 0x100fb3f2
cmp al, 0xd
jne 0x100fb3f5
inc ecx
jmp 0x100fb3e0
cmp byte [ecx], 0
jne 0x100fba7d
mov ecx, ebx
and ecx, 0x80000001
jns 0x100fb40d
dec ecx
or ecx, 0xfffffffe
inc ecx
jne 0x100fba7d
cmp dword [esp + 0x10], 0
je 0x100fba09
push 0x2b
call fcn.100f72e0
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x100fa426.0
push ebx
push esi
call fcn.100d1cd0
mov esi, eax
add esp, 8
test esi, esi
jne 0x100fb465
mov edx, dword [esp + 0x28]
push str.allocating_hexbin_data
push eax
push edx
push 2
push 0xf
call fcn.100cf020
push ebp
call dword [0x10438018]
add esp, 0x18
jmp 0x100fba7d
mov eax, ebx
cdq
sub eax, edx
sar eax, 1
mov edx, esi
test ebx, ebx
jle 0x100fb484
mov cl, byte [edx]
dec ebx
cmp cl, 0x61
jb 0x100fb47f
sub cl, 0x20
mov byte [edx], cl
inc edx
test ebx, ebx
jg 0x100fb472
mov dword [ebp + 0xc], eax
mov eax, dword [esp + 0x10]
mov dword [ebp + 8], esi
mov dword [eax], ebp
jmp 0x100fba09
xor ebp, ebp
mov esi, edi
mov dword [esp + 0x14], ebp
mov dword [esp + 0x1c], ebp
cmp edi, ebp
je 0x100fba7d
mov al, byte [edi]
test al, al
je 0x100fb4d2
mov edi, ebp
call fcn.100f95a0
test eax, eax
jl 0x100fb4c0
cmp eax, 0x40
jge 0x100fb4ce
inc edi
mov al, byte [esi + 1]
inc esi
test al, al
jne 0x100fb4b1
mov dword [esp + 0x14], edi
jmp 0x100fb500
mov dword [esp + 0x14], edi
mov al, byte [esi]
test al, al
je 0x100fb4fc
call fcn.100f95a0
test eax, eax
jl 0x100fb4ea
cmp eax, 0x40
jl 0x100fba7d
cmp eax, 0x40
jne 0x100fb4f0
inc ebp
mov al, byte [esi + 1]
inc esi
test al, al
jne 0x100fb4d8
mov dword [esp + 0x1c], ebp
mov edi, dword [esp + 0x14]
mov eax, edi
cdq
and edx, 3
add eax, edx
sar eax, 2
lea ecx, [eax + eax*2]
mov dword [esp + 0x20], ecx
test ebp, ebp
jne 0x100fb52e
and edi, reloc.WSOCK32.dll_closesocket
jns 0x100fb523
dec edi
or edi, 0xfffffffc
inc edi
jne 0x100fba7d
jmp 0x100fb5af
cmp ebp, 1
jne 0x100fb56e
and edi, reloc.WSOCK32.dll_closesocket
jns 0x100fb540
dec edi
or edi, 0xfffffffc
inc edi
cmp edi, 3
jne 0x100fba7d
mov al, byte [esi]
call fcn.100f95a0
test eax, eax
jl 0x100fb559
cmp eax, 0x3f
jle 0x100fb55c
dec esi
jmp 0x100fb549
test eax, 0xffffffc3
jne 0x100fba7d
add dword [esp + 0x20], 2
jmp 0x100fb5af
cmp ebp, 2
jne 0x100fba7d
and edi, reloc.WSOCK32.dll_closesocket
jns 0x100fb584
dec edi
or edi, 0xfffffffc
inc edi
cmp edi, 2
jne 0x100fba7d
mov al, byte [esi]
call fcn.100f95a0
test eax, eax
jl 0x100fb59d
cmp eax, 0x3f
jle 0x100fb5a0
dec esi
jmp 0x100fb58d
test eax, 0xffffffcf
jne 0x100fba7d
inc dword [esp + 0x20]
cmp dword [esp + 0x10], 0
je 0x100fba09
push 0x2c
call fcn.100f72e0
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x100fb5f2
mov eax, dword [esp + 0x24]
test eax, eax
je 0x100fb5dc
push eax
call dword [0x10438018]
add esp, 4
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
mov ecx, dword [esp + 0x40]
xor ecx, esp
call fcn.10148524
add esp, 0x44
ret
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [edx + eax + 1]
push ecx
call dword [0x10438020]
mov esi, eax
add esp, 4
test esi, esi
jne 0x100fb61a
push 0x10185250
push eax
push ebx
jmp 0x100fb44d
mov edi, dword [esp + 0x18]
mov dword [ebp + 8], esi
cmp byte [edi], 0
je 0x100fb63c
mov bl, byte [edi]
mov al, bl
call fcn.100f95a0
test eax, eax
jl 0x100fb636
mov byte [esi], bl
inc esi
inc edi
cmp byte [edi], 0
jne 0x100fb626
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
mov byte [esi], 0
mov dword [ebp + 0xc], edx
mov dword [eax], ebp
jmp 0x100fba09
mov ecx, edi
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], 0
test edi, edi
je 0x100fba7d
mov esi, dword [esp + 0x70]
test esi, esi
je 0x100fb689
nop
mov al, byte [ecx]
cmp al, 0x20
je 0x100fb682
cmp al, 9
jb 0x100fb67e
cmp al, 0xa
jbe 0x100fb682
cmp al, 0xd
jne 0x100fb685
inc ecx
jmp 0x100fb670
mov dword [esp + 0x18], ecx
mov al, byte [ecx]
cmp al, 0x2d
jne 0x100fb699
mov dword [esp + 0x1c], 1
jmp 0x100fb69d
cmp al, 0x2b
jne 0x100fb6a2
inc ecx
mov dword [esp + 0x18], ecx
lea ecx, [esp + 0x28]
push ecx
lea edx, [esp + 0x34]
push edx
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x24]
push ecx
call fcn.100fa260
add esp, 0x10
mov dword [esp + 0x14], eax
test eax, eax
jl 0x100fba7d
mov ecx, dword [esp + 0x18]
test esi, esi
je 0x100fb6e7
mov al, byte [ecx]
cmp al, 0x20
je 0x100fb6e4
cmp al, 9
jb 0x100fb6e0
cmp al, 0xa
jbe 0x100fb6e4
cmp al, 0xd
jne 0x100fb6e7
inc ecx
jmp 0x100fb6d2
cmp byte [ecx], 0
jne 0x100fba7d
mov eax, dword [esp + 0x20]
mov esi, dword [esp + 0x28]
mov ebp, dword [esp + 0x30]
mov ebx, dword [esp + 0x2c]
cmp eax, 0x1f
jne 0x100fb725
cmp dword [esp + 0x1c], 0
jne 0x100fb777
test esi, esi
jne 0x100fba7d
test ebp, ebp
jne 0x100fba7d
test ebx, ebx
je 0x100fb777
jmp 0x100fba7d
cmp eax, 0x22
jne 0x100fb731
cmp dword [esp + 0x1c], 1
jmp 0x100fb73b
cmp eax, 0x20
jne 0x100fb753
cmp dword [esp + 0x1c], 0
je 0x100fba7d
test esi, esi
jne 0x100fb777
test ebp, ebp
jne 0x100fb777
test ebx, ebx
je 0x100fba7d
jmp 0x100fb777
cmp eax, 0x21
jne 0x100fb777
cmp dword [esp + 0x1c], 1
jne 0x100fb777
test esi, esi
jne 0x100fba7d
test ebp, ebp
jne 0x100fba7d
test ebx, ebx
jne 0x100fba7d
cmp dword [esp + 0x10], 0
je 0x100fba09
mov edx, eax
push edx
call fcn.100f72e0
add esp, 4
test eax, eax
je 0x100fba09
cmp dword [esp + 0x14], 0
jne 0x100fb7a4
mov dword [esp + 0x14], 1
mov edx, dword [eax + 0x18]
mov ecx, dword [esp + 0x1c]
and edx, 0xffffff00
and ecx, 1
or edx, ecx
mov cl, byte [esp + 0x14]
mov dword [eax + 0x18], edx
mov edx, dword [esp + 0x10]
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebp
mov dword [eax + 0x10], esi
mov byte [eax + 0x19], cl
mov dword [edx], eax
jmp 0x100fba09
xor esi, esi
mov dword [esp + 0x1c], edi
test edi, edi
je 0x100fba7d
mov al, byte [edi]
cmp al, 0x2d
jne 0x100fb7ef
mov esi, 1
jmp 0x100fb7f3
cmp al, 0x2b
jne 0x100fb7f8
inc edi
mov dword [esp + 0x1c], edi
lea eax, [esp + 0x30]
push eax
lea ecx, [esp + 0x2c]
push ecx
lea edx, [esp + 0x34]
push edx
lea eax, [esp + 0x28]
push eax
call fcn.100fa260
add esp, 0x10
mov dword [esp + 0x14], eax
test eax, eax
jl 0x100fba7d
mov ecx, dword [esp + 0x1c]
cmp byte [ecx], 0
jne 0x100fba7d
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x28]
cmp eax, 0x25
jne 0x100fb889
cmp ebx, 0x39a
jb 0x100fb917
ja 0x100fba7d
cmp ebp, 0x2028830
jb 0x100fb917
ja 0x100fba7d
test esi, esi
jne 0x100fb875
cmp edi, 0x343cfff
jmp 0x100fb911
cmp esi, 1
jne 0x100fb917
cmp edi, 0x343d000
jmp 0x100fb911
cmp eax, 0x23
jne 0x100fb8ba
test ebx, ebx
jne 0x100fba7d
cmp ebp, 0x15
jb 0x100fb917
ja 0x100fba7d
test esi, esi
jne 0x100fb8ad
cmp edi, 0x2d48aff
jmp 0x100fb911
cmp esi, 1
jne 0x100fb917
cmp edi, 0x2d48b00
jmp 0x100fb911
cmp eax, 0x27
jne 0x100fb8e8
test ebp, ebp
jne 0x100fba7d
test ebx, ebx
jne 0x100fba7d
cmp esi, 1
jne 0x100fb8dc
cmp edi, 0x8000
jmp 0x100fb911
test esi, esi
jne 0x100fb917
cmp edi, 0x7fff
jmp 0x100fb911
cmp eax, 0x29
jne 0x100fb917
test ebp, ebp
jne 0x100fba7d
test ebx, ebx
jne 0x100fba7d
cmp esi, 1
jne 0x100fb90a
cmp edi, 0x80
jmp 0x100fb911
test esi, esi
jne 0x100fb917
cmp edi, 0x7f
ja 0x100fba7d
cmp dword [esp + 0x10], 0
je 0x100fba09
mov edx, eax
push edx
call fcn.100f72e0
add esp, 4
test eax, eax
je 0x100fba09
mov ecx, dword [eax + 0x18]
and ecx, 0xffffff00
and esi, 1
or ecx, esi
mov dword [eax + 8], edi
mov dword [eax + 0xc], ebp
mov dword [eax + 0x10], ebx
mov dword [eax + 0x18], ecx
jmp 0x100fb9fc
mov dword [esp + 0x1c], edi
test edi, edi
je 0x100fba7d
lea edx, [esp + 0x2c]
push edx
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x30]
push ecx
lea edx, [esp + 0x28]
push edx
call fcn.100fa260
add esp, 0x10
mov dword [esp + 0x14], eax
test eax, eax
jl 0x100fba7d
mov eax, dword [esp + 0x1c]
cmp byte [eax], 0
jne 0x100fba7d
mov eax, dword [esp + 0x20]
mov ebp, dword [esp + 0x2c]
mov esi, dword [esp + 0x30]
mov ebx, dword [esp + 0x28]
cmp eax, 0x26
jne 0x100fba30
cmp ebp, 0x734
jb 0x100fb9d6
ja 0x100fba7d
cmp esi, 0x4051061
jb 0x100fb9d6
ja 0x100fba7d
cmp ebx, 0x91beff
ja 0x100fba7d
cmp dword [esp + 0x10], 0
je 0x100fba09
mov ecx, eax
push ecx
call fcn.100f72e0
add esp, 4
test eax, eax
je 0x100fba09
and dword [eax + 0x18], 0xffffff00
mov dword [eax + 8], ebx
mov dword [eax + 0xc], esi
mov dword [eax + 0x10], ebp
mov dl, byte [esp + 0x14]
mov byte [eax + 0x19], dl
mov ecx, dword [esp + 0x10]
mov dword [ecx], eax
mov eax, dword [esp + 0x24]
test eax, eax
je 0x100fba1b
push eax
call dword [0x10438018]
add esp, 4
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x40]
xor ecx, esp
call fcn.10148524
add esp, 0x44
ret
cmp eax, 0x24
jne 0x100fba48
test ebp, ebp
jne 0x100fba7d
cmp esi, 0x2a
jb 0x100fb9d6
ja 0x100fba7d
cmp ebx, 0x5a915ff
jmp 0x100fb9d0
cmp eax, 0x28
jne 0x100fba60
test esi, esi
jne 0x100fba7d
test ebp, ebp
jne 0x100fba7d
cmp ebx, 0xffff
jmp 0x100fb9d0
cmp eax, 0x2a
jne 0x100fb9d6
test esi, esi
jne 0x100fba7d
test ebp, ebp
jne 0x100fba7d
cmp ebx, 0xff
jbe 0x100fb9d6
mov eax, dword [esp + 0x24]
test eax, eax
je 0x100fba8f
push eax
call dword [0x10438018]
add esp, 4
mov ecx, dword [esp + 0x50]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
mov eax, 1
call fcn.10148524
add esp, 0x44
ret