Function at 0x500330
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x11c
push ebx
push ebp
push esi
mov ebp, ecx
xor esi, esi
mov dword [esp + 0xd4], esi
mov eax, dword [ebp]
mov edx, dword [eax + 4]
push edi
lea ecx, [esp + 0x1c]
push ecx
mov ecx, ebp
call edx
mov eax, dword [ebp]
mov edx, dword [eax + 8]
lea ecx, [esp + 0x28]
push ecx
mov ecx, ebp
call edx
push 0x14
mov dword [esp + 0x18], 2
call fcn.00579757
add esp, 4
or ecx, 0xffffffff
cmp eax, esi
je 0x50038c
mov dword [eax], esi
mov dword [eax + 4], esi
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], esi
jmp 0x50038e
xor eax, eax
mov dword [esp + 0x18], eax
cmp eax, esi
je 0x50039f
mov ecx, 1
lock xadd dword [eax], ecx
mov edx, dword [ebp + 0x14]
mov eax, dword [edx + 8]
mov ecx, dword [esp + 0x13c]
mov esi, dword [ecx]
mov edi, dword [esi + 4]
mov dword [esp + 0x50], eax
lea edx, [esp + 0x2c]
push edx
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0x38]
xor ebx, ebx
push ecx
mov eax, edi
mov byte [esp + 0x1f], bl
call fcn.004fa7c0
mov ecx, dword [esp + 0x3c]
mov esi, dword [esi + 8]
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x64
sub ecx, eax
mov dword [esp + 0xcc], ecx
add esp, 0xc
mov ecx, esi
inc ecx
neg ecx
sbb ecx, ecx
and ecx, esi
mov eax, 0x4a90be59
imul ecx
sar edx, 0x14
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov dword [esp + 0x40], ecx
mov ecx, esi
inc ecx
neg ecx
sbb ecx, ecx
and ecx, esi
mov eax, 0x4a90be59
imul ecx
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x36ee80
sub ecx, eax
mov eax, 0x45e7b273
imul ecx
sar edx, 0xe
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov dword [esp + 0xd0], ecx
mov ecx, esi
inc ecx
neg ecx
sbb ecx, ecx
and ecx, esi
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cdq
mov ecx, 0x3c
idiv ecx
mov ecx, esi
inc ecx
neg ecx
sbb ecx, ecx
mov dword [esp + 0x44], 0xffffffff
and ecx, esi
mov dword [esp + 0xbc], edx
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x3e8
sub ecx, eax
mov eax, 0x24924925
mul edi
mov eax, edi
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 2
mov dword [esp + 0xa4], ecx
lea ecx, [eax*8]
sub ecx, eax
sub edi, ecx
inc edi
xor esi, esi
mov dword [esp + 0x94], edi
mov dword [esp + 0x48], 0xffffffff
mov dword [esp + 0x20], esi
mov dword [esp + 0x7c], esi
cmp esi, dword [esp + 0x50]
mov edx, dword [esp + 0x134]
jge 0x5008b7
mov eax, dword [ebp + 0x48]
mov ecx, dword [eax + 8]
mov edi, dword [eax + 8]
add ecx, esi
lea ecx, [eax + ecx*4 + 0x14]
add edi, esi
mov eax, dword [eax + edi*4 + 0x14]
mov eax, dword [eax + 8]
mov dword [esp + 0xfc], edx
lea edx, [esp + 0xfc]
push edx
push ecx
mov dword [esp + 0x108], ebx
mov dword [esp + 0x10c], eax
call fcn.004be730
add esp, 8
test al, al
je 0x500af2
mov eax, dword [ebp + 0x48]
mov ecx, dword [eax + 8]
add ecx, esi
mov edx, dword [eax + ecx*4 + 0x14]
add ebx, dword [edx + 8]
mov ecx, dword [ebp + 0x14]
mov eax, dword [esp + 0x7c]
mov dword [ecx + eax + 0x14], ebx
mov edx, dword [ebp + 0x14]
mov ecx, dword [edx + eax + 0x10]
mov edi, dword [edx + eax + 0x18]
lea eax, [edx + eax + 0x10]
mov edx, dword [eax + 4]
mov dword [esp + 0x108], ecx
lea eax, [esp + 0x4c]
push eax
mov eax, dword [esp + 0x138]
lea ecx, [esp + 0x70]
push ecx
mov ecx, dword [esp + 0x144]
push ebx
mov dword [esp + 0x118], edx
mov edx, dword [esp + 0x144]
push edx
push eax
push esi
push ecx
mov ecx, ebp
call fcn.004ffc20
cmp byte [esp + 0x140], 0
mov dword [esp + 0x3c], eax
je 0x500680
cmp dword [esp + 0x6c], 1
jne 0x500680
cmp dword [esp + 0x4c], edi
jge 0x500680
push esi
lea edx, [esp + 0xe0]
push edx
mov ecx, ebp
call fcn.004fd9e0
mov eax, dword [esp + 0xdc]
and eax, 3
cmp al, 3
jne 0x500680
push 0xffffffffffffffff
lea edx, [esp + 0xcc]
mov ecx, 0x30
push 0x5f81bc
push edx
mov word [esp + 0x8e], cx
call fcn.004bf8c0
add esp, 0xc
mov ecx, eax
lea eax, [esp + 0x82]
push eax
mov eax, dword [esp + 0x40]
push 0xa
cdq
push edi
push edx
push eax
lea edx, [esp + 0x88]
push edx
call fcn.004c4070
mov eax, dword [esp + 0xc8]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x50064b
mov edx, dword [esp + 0xc8]
push edx
call fcn.004bdf50
add esp, 4
mov ecx, dword [esp + 0x4c]
lea eax, [esp + 0x74]
push eax
push ecx
mov ecx, dword [esp + 0x13c]
push ebx
call fcn.004c3e00
mov edx, dword [esp + 0x74]
mov dword [esp + 0x4c], edi
or eax, 0xffffffff
lock xadd dword [edx], eax
jne 0x500680
mov ecx, dword [esp + 0x74]
push ecx
call fcn.004bdf50
add esp, 4
xor edx, edx
cmp dword [esp + 0x4c], edx
mov dword [esp + 0xe4], edx
lea eax, [esp + 0x4c]
jg 0x50069a
lea eax, [esp + 0xe4]
add ebx, dword [eax]
mov eax, dword [esp + 0x6c]
cmp dword [esp + 0x14], eax
lea eax, [esp + 0x14]
jl 0x5006ae
lea eax, [esp + 0x6c]
mov edi, dword [eax]
mov ecx, 1
mov dword [esp + 0x14], edi
cmp edi, ecx
jne 0x5006cb
cmp dword [ebp + 0x60], edx
jne 0x5006d3
mov dword [esp + 0x14], edx
jmp 0x500def
cmp edi, edx
je 0x5007c9
mov edx, dword [esp + 0x108]
cmp edx, 0x20
jg 0x500731
je 0x50072b
lea eax, [edx - 1]
cmp eax, 0xf
ja case.0x5006f4.3
movzx ecx, byte [eax + 0x5016f4]
jmp dword [ecx*4 + 0x5016dc]
lea eax, [esp + 0x44]
jmp 0x50079f
lea eax, [esp + 0xd0]
jmp 0x50079f
lea eax, [esp + 0xbc]
jmp 0x50079f
lea eax, [esp + 0xa4]
jmp 0x50079f
lea eax, [esp + 0x48]
jmp 0x50079f
lea eax, [esp + 0x40]
jmp 0x50079f
cmp edx, 0x400
jg 0x50077f
je 0x500779
cmp edx, 0x100
je 0x500755
cmp edx, 0x200
jne case.0x5006f4.3
lea eax, [esp + 0x34]
jmp 0x50079f
cmp dword [esp + 0x3c], ecx
mov dword [esp + 0xf8], ecx
lea eax, [esp + 0x2c]
lea ecx, [esp + 0x3c]
jg 0x500771
lea ecx, [esp + 0xf8]
mov ecx, dword [ecx]
mov dword [esp + 0x3c], ecx
jmp 0x50079f
lea eax, [esp + 0x30]
jmp 0x50079f
cmp edx, 0x800
je 0x500798
cmp edx, 0x1000
jne case.0x5006f4.3
lea eax, [esp + 0x94]
jmp 0x50079f
lea eax, [esp + 0xc0]
mov ecx, dword [esp + 0x3c]
test dword [esp + 0x20], edx
je 0x5007be
cmp dword [eax], ecx
je 0x5007be
mov byte [esp + 0x13], 1
cmp esi, dword [ebp + 4]
jne 0x5007c9
cmp ecx, 0xffffffff
jne 0x5007c3
jmp 0x5007c9
cmp ecx, 0xffffffff
je 0x5007c5
mov dword [eax], ecx
or dword [esp + 0x20], edx
add dword [esp + 0x7c], 0xc
inc esi
test edi, edi
je 0x500def
jmp 0x5004e1
mov eax, dword [esp + 0x108]
lea edx, [esp + 0x9c]
push edx
push eax
lea ecx, [esp + 0x94]
push ecx
mov ecx, ebp
call fcn.004fc4e0
mov ecx, eax
call fcn.004bf880
mov edx, dword [eax]
mov eax, dword [edx + 0xc]
push eax
push str.QDateTimeParser::parse_Internal_error___s_
call fcn.004b7590
mov ecx, dword [esp + 0xa4]
add esp, 8
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x500835
mov eax, dword [esp + 0x9c]
push eax
call fcn.004c45d0
add esp, 4
mov ecx, dword [esp + 0x8c]
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x500855
mov eax, dword [esp + 0x8c]
push eax
call fcn.004bdf50
add esp, 4
push str.QDateTimeParser::parse_Internal_error_2
call fcn.004b7590
mov esi, dword [esp + 0x134]
add esp, 4
mov ecx, esi
call fcn.004fb8b0
mov eax, dword [esp + 0x18]
test eax, eax
je 0x50088e
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x50088e
mov edx, dword [esp + 0x18]
push edx
call fcn.005796d1
add esp, 4
mov eax, dword [esp + 0x28]
test eax, eax
je 0x5008ac
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x5008ac
mov edx, dword [esp + 0x28]
push edx
call fcn.005796d1
add esp, 4
mov eax, dword [esp + 0x1c]
test eax, eax
jmp 0x5016b5
cmp dword [esp + 0x14], 0
je 0x500def
mov eax, dword [ebp + 0x48]
mov ecx, dword [eax + 0xc]
lea ecx, [eax + ecx*4 + 0x10]
mov eax, dword [edx]
mov eax, dword [eax + 8]
mov dword [esp + 0x114], edx
lea edx, [esp + 0x114]
push edx
sub eax, ebx
push ecx
mov dword [esp + 0x120], ebx
mov dword [esp + 0x124], eax
call fcn.004be730
add esp, 8
test al, al
jne 0x50090a
mov dword [esp + 0x14], 0
jmp 0x500def
cmp dword [ebp + 0x54], 0xf
je 0x500c00
mov ecx, dword [esp + 0x30]
mov eax, 0x51eb851f
imul ecx
mov ebx, dword [esp + 0xc0]
sar edx, 5
mov esi, edx
shr esi, 0x1f
add esi, edx
imul esi, esi, 0x64
sub ecx, esi
cmp ecx, ebx
je 0x50096e
mov eax, dword [esp + 0x20]
and eax, 0xc00
cmp eax, 0x800
je 0x500968
cmp eax, 0xc00
jne 0x50096e
mov eax, dword [ebp + 4]
push eax
mov ecx, ebp
mov byte [esp + 0x17], 1
call fcn.004fb390
cmp dword [eax], 0x800
jne 0x50096e
add esi, ebx
mov dword [esp + 0x30], esi
mov edi, dword [esp + 0x2c]
mov ecx, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
push edi
push ecx
push esi
call fcn.004faed0
add esp, 0xc
test al, al
jne 0x50098d
xor ecx, ecx
jmp 0x50099c
mov eax, dword [esp + 0x34]
mov ebx, edi
mov ecx, esi
call fcn.004fa710
mov ecx, eax
mov eax, 0x24924925
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 2
lea edx, [eax*8]
sub edx, eax
mov eax, dword [esp + 0x94]
sub edx, ecx
lea esi, [edx + eax - 1]
mov dword [esp + 0x84], ecx
test esi, esi
je 0x500a29
cmp dword [esp + 0x14], 2
jne 0x500a29
mov eax, dword [esp + 0x20]
test eax, 0x1000
je 0x500a29
mov ecx, dword [ebp + 4]
shr eax, 8
and al, 1
push ecx
mov ecx, ebp
mov byte [esp + 0x17], al
call fcn.004fb390
cmp dword [eax], 0x1000
je 0x500a03
cmp dword [ebp + 4], 0xffffffff
jne 0x500a29
add edi, esi
mov dword [esp + 0x2c], edi
test edi, edi
jg 0x500a12
add edi, 7
jmp 0x500a25
lea ecx, [esp + 0x84]
call fcn.004fae00
cmp edi, eax
jle 0x500a29
sub edi, 7
mov dword [esp + 0x2c], edi
mov eax, dword [ebp + 4]
mov byte [esp + 0x12], 0
test eax, eax
jge 0x500a6c
cmp eax, 0xfffffffd
je 0x500a67
cmp eax, 0xfffffffe
je 0x500a62
cmp eax, 0xffffffff
je 0x500a52
push eax
push str.QDateTimeParser::sectionNode___Internal_error___d_
call fcn.004b7590
add esp, 8
lea eax, [ebp + 0x30]
test dword [eax], 0x1100
je 0x500a7d
mov dword [ebp + 0xc], edi
jmp 0x500a8f
lea eax, [ebp + 0x18]
jmp 0x500a55
lea eax, [ebp + 0x24]
jmp 0x500a55
mov ecx, dword [ebp + 0x14]
cmp eax, dword [ecx + 8]
jge 0x500a44
lea edx, [eax + eax*2]
lea eax, [ecx + edx*4 + 0x10]
jmp 0x500a55
mov eax, dword [ebp + 0xc]
cmp eax, edi
jle 0x500a8f
mov edi, eax
mov dword [esp + 0x2c], edi
mov byte [esp + 0x12], 1
mov ebx, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
push edi
push ebx
push esi
call fcn.004faed0
add esp, 0xc
test al, al
jne 0x500ad9
cmp edi, 0x20
jge 0x500aae
mov dword [ebp + 0xc], edi
cmp edi, 0x1c
jle 0x500ad9
cmp esi, 0xffffed97
jl 0x500ad9
jne 0x500ac4
cmp ebx, 1
jl 0x500ad9
jmp 0x500ac6
test esi, esi
je 0x500ad9
lea eax, [ebx - 1]
cmp eax, 0xb
ja 0x500ad9
cmp byte [ebx + 0x639998], 1
jge 0x500aec
cmp byte [esp + 0x12], 0
je 0x500c04
mov esi, dword [esp + 0x30]
mov ebx, dword [esp + 0x34]
cmp dword [ebp + 0x60], 0
jne 0x500aff
mov dword [esp + 0x14], 0
jmp 0x500def
mov eax, dword [esp + 0x14]
cmp eax, 2
jne 0x500bdd
cmp byte [ebp + 0x58], 0
je 0x500bdd
push 1
push ebx
push esi
lea ecx, [esp + 0x12c]
call fcn.004fbb00
mov ecx, eax
call fcn.004fae00
mov dword [esp + 0xec], eax
cmp edi, eax
lea eax, [esp + 0x2c]
jl 0x500b43
lea eax, [esp + 0xec]
mov edi, dword [eax]
mov edx, dword [ebp]
mov edx, dword [edx + 0x18]
lea eax, [esp + 0xe8]
push eax
mov ecx, ebp
mov dword [esp + 0x30], edi
call edx
xor esi, esi
cmp dword [esp + 0x50], esi
jle 0x500c04
push esi
mov ecx, ebp
call fcn.004fb390
test dword [eax], 0x1100
je 0x500bd4
mov eax, edi
cdq
push edx
push eax
lea eax, [esp + 0x78]
push eax
lea ecx, [esp + 0xf4]
call fcn.004f5de0
push esi
mov ecx, ebp
call fcn.004fb390
push eax
mov ecx, ebp
call fcn.004fcfe0
lea ecx, [esp + 0x70]
push ecx
push esi
mov ecx, ebp
mov ebx, eax
call fcn.004ff190
mov ecx, dword [esp + 0x138]
push eax
push ebx
call fcn.004c3e00
mov edx, dword [esp + 0x70]
or eax, 0xffffffff
lock xadd dword [edx], eax
jne 0x500bd4
mov ecx, dword [esp + 0x70]
push ecx
call fcn.004bdf50
add esp, 4
inc esi
cmp esi, dword [esp + 0x50]
jl 0x500b67
jmp 0x500c04
cmp eax, 1
mov dword [esp + 0xf4], 1
lea eax, [esp + 0xf4]
jg 0x500bf8
lea eax, [esp + 0x14]
mov edx, dword [eax]
mov dword [esp + 0x14], edx
jmp 0x500c04
mov edi, dword [esp + 0x2c]
cmp dword [ebp + 0x54], 0xe
je 0x500cdc
mov ebx, dword [esp + 0x20]
mov eax, dword [esp + 0x48]
test bl, 0x10
je 0x500ca7
mov ecx, dword [esp + 0x40]
shr ebx, 5
and bl, 1
cmp eax, 0xffffffff
jne 0x500c3e
test bl, bl
je 0x500c5e
xor eax, eax
cmp ecx, 0xc
setge al
mov dword [esp + 0x48], eax
test eax, eax
jne 0x500c68
mov esi, dword [esp + 0x44]
mov eax, 0xd5555555
imul esi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
lea eax, [eax + eax*2]
lea esi, [esi + eax*4]
jmp 0x500c8c
mov dword [esp + 0x48], 0
jmp 0x500c42
mov esi, dword [esp + 0x44]
mov eax, 0x2aaaaaab
imul esi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax + eax*2]
add edx, edx
add edx, edx
mov eax, 0xc
sub eax, edx
add esi, eax
mov dword [esp + 0x44], esi
test bl, bl
jne 0x500c9c
mov ecx, esi
mov dword [esp + 0x40], ecx
jmp 0x500ce0
cmp ecx, esi
je 0x500ce0
mov byte [esp + 0x13], 1
jmp 0x500ce0
cmp eax, 0xffffffff
je 0x500cdc
test bl, 0x20
jne 0x500cbe
lea ecx, [eax + eax*2]
add ecx, ecx
add ecx, ecx
mov dword [esp + 0x40], ecx
jmp 0x500ce0
mov ecx, dword [esp + 0x40]
xor edx, edx
test eax, eax
sete dl
xor eax, eax
cmp ecx, 0xc
setl al
cmp edx, eax
je 0x500ce0
mov byte [esp + 0x13], 1
jmp 0x500ce0
mov ecx, dword [esp + 0x40]
cmp ecx, 0x18
jae 0x500d0c
mov eax, dword [esp + 0xd0]
cmp eax, 0x3c
jae 0x500d0c
mov edx, dword [esp + 0xbc]
cmp edx, 0x3c
jae 0x500d0c
mov esi, dword [esp + 0xa4]
cmp esi, 0x3e8
jb 0x500d19
mov dword [esp + 0xcc], 0xffffffff
jmp 0x500d3c
mov ebx, ecx
shl ebx, 4
sub ebx, ecx
lea eax, [eax + ebx*4]
mov ecx, eax
shl ecx, 4
sub ecx, eax
lea edx, [edx + ecx*4]
imul edx, edx, 0x3e8
add edx, esi
mov dword [esp + 0xcc], edx
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
push edi
push eax
push esi
call fcn.004faed0
add esp, 0xc
test al, al
jne 0x500d60
mov dword [esp + 0xac], 0
jmp 0x500d74
mov eax, dword [esp + 0x34]
mov ebx, edi
mov ecx, esi
call fcn.004fa710
mov dword [esp + 0xac], eax
mov ecx, dword [ebp + 0x5c]
push ecx
lea edx, [esp + 0xd0]
push edx
lea eax, [esp + 0xb4]
push eax
lea ecx, [esp + 0xd0]
call fcn.004fb9d0
mov ecx, dword [eax]
cmp ecx, dword [esp + 0x18]
je 0x500dcb
test ecx, ecx
je 0x500da9
mov edx, 1
lock xadd dword [ecx], edx
mov ecx, dword [esp + 0x18]
mov eax, dword [eax]
mov dword [esp + 0x18], eax
test ecx, ecx
je 0x500dcb
mov edx, ecx
or eax, 0xffffffff
lock xadd dword [edx], eax
jne 0x500dcb
push ecx
call fcn.005796d1
add esp, 4
mov eax, dword [esp + 0xc4]
test eax, eax
je 0x500def
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x500def
mov edx, dword [esp + 0xc4]
push edx
call fcn.005796d1
add esp, 4
mov eax, dword [esp + 0x18]
xor esi, esi
cmp dword [eax + 4], esi
je 0x501514
mov eax, dword [eax + 8]
cmp eax, 0xffffffff
jle 0x501514
cmp eax, 0x5265c00
jge 0x501514
cmp dword [ebp + 0x60], esi
je 0x5014b9
cmp dword [esp + 0x14], esi
je 0x5014b4
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1c]
call fcn.004fcca0
test al, al
je 0x5014b4
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x1c]
call fcn.004fcca0
test al, al
jne 0x500f31
lea edx, [esp + 0x98]
push edx
push 0
lea eax, [esp + 0xa8]
push eax
lea ecx, [esp + 0x28]
call fcn.004fe180
mov ecx, eax
call fcn.004bf880
mov ecx, dword [eax]
mov esi, dword [ecx + 0xc]
lea edx, [esp + 0xb4]
push edx
push 0
lea eax, [esp + 0xdc]
push eax
lea ecx, [esp + 0x24]
call fcn.004fe180
mov ecx, eax
call fcn.004bf880
mov ecx, dword [eax]
mov edx, dword [ecx + 0xc]
push esi
push edx
push str.QDateTimeParser::parse_Internal_error_3___s__s_
call fcn.004b7590
mov eax, dword [esp + 0xc0]
add esp, 0xc
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x500ed1
mov edx, dword [esp + 0xb4]
push edx
call fcn.004c45d0
add esp, 4
mov eax, dword [esp + 0xd4]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x500ef1
mov edx, dword [esp + 0xd4]
push edx
call fcn.004bdf50
add esp, 4
mov eax, dword [esp + 0x98]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x500f11
mov edx, dword [esp + 0x98]
push edx
call fcn.004c45d0
add esp, 4
mov eax, dword [esp + 0xa0]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x500f31
mov edx, dword [esp + 0xa0]
push edx
call fcn.004bdf50
add esp, 4
xor edi, edi
cmp dword [esp + 0x50], edi
mov byte [esp + 0x12], 0
mov dword [esp + 0x14], edi
jle 0x501514
cmp byte [esp + 0x12], 0
jne 0x501514
mov eax, dword [ebp + 0x14]
lea esi, [edi + edi*2]
add esi, esi
add esi, esi
mov ebx, dword [esi + eax + 0x14]
lea ecx, [esi + eax + 0x10]
mov dword [esp + 0x20], ecx
test edi, edi
jge 0x500fb7
cmp edi, 0xfffffffd
je 0x500fb2
cmp edi, 0xfffffffe
je 0x500fad
cmp edi, 0xffffffff
je 0x500f88
push edi
push str.QDateTimeParser::sectionNode___Internal_error___d_
call fcn.004b7590
add esp, 8
lea eax, [ebp + 0x30]
mov eax, dword [eax]
add eax, 3
cmp eax, 2
ja 0x500fc0
mov dword [esp + 0x58], 0x6c30d4
mov eax, 0x6c30d4
mov ecx, 1
lock xadd dword [eax], ecx
jmp 0x500fdb
lea eax, [ebp + 0x18]
jmp 0x500f8b
lea eax, [ebp + 0x24]
jmp 0x500f8b
cmp edi, dword [eax + 8]
jge 0x500f7a
mov eax, ecx
jmp 0x500f8b
push edi
mov ecx, ebp
call fcn.004ff190
mov ecx, dword [esp + 0x134]
push eax
push ebx
lea edx, [esp + 0x60]
push edx
call fcn.004bf660
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0x5c]
call fcn.004c1ff0
mov ecx, dword [esp + 0x58]
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x501003
mov eax, dword [esp + 0x58]
push eax
call fcn.004bdf50
add esp, 4
mov ecx, dword [esp + 0x24]
mov ebx, dword [ecx + 8]
test edi, edi
jge 0x501123
cmp edi, 0xfffffffd
je 0x50111b
cmp edi, 0xfffffffe
je 0x501113
cmp edi, 0xffffffff
je 0x501037
push edi
push str.QDateTimeParser::sectionNode___Internal_error___d_
call fcn.004b7590
add esp, 8
lea eax, [ebp + 0x30]
mov edx, dword [eax + 8]
mov eax, dword [eax]
push edx
push eax
mov ecx, ebp
call fcn.004fd0b0
cmp ebx, eax
jge 0x501066
push edi
lea ecx, [esp + 0x128]
push ecx
mov ecx, ebp
call fcn.004fd9e0
mov edx, dword [eax]
and dl, 3
cmp dl, 1
jne 0x5010a5
mov eax, 0x20
push 1
mov word [esp + 0xf4], ax
mov ecx, dword [esp + 0xf4]
push 0
push ecx
lea ecx, [esp + 0x30]
call fcn.004bf560
cmp eax, 0xffffffff
setne al
movzx edx, al
neg edx
mov byte [esp + 0x3b], al
sbb edx, edx
lea eax, [esp + 0x3b]
test eax, edx
je 0x50148d
mov esi, dword [esp + 0x20]
mov eax, dword [esi]
sub eax, 1
je 0x501138
sub eax, 0x1ff
je case.default.0x50114d
test byte [esi], 0x3f
mov ecx, dword [esp + 0x1c]
je 0x50131d
mov eax, dword [esp + 0x18]
mov esi, dword [eax + 4]
mov edx, dword [ecx + 4]
sub edx, esi
jne 0x50148d
mov ecx, dword [ecx + 8]
mov edx, dword [eax + 8]
mov eax, ecx
inc eax
neg eax
sbb eax, eax
and eax, ecx
mov ecx, edx
inc ecx
neg ecx
sbb ecx, ecx
and ecx, edx
sub eax, ecx
mov ebx, eax
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 4]
sub ecx, esi
test ecx, ecx
jle 0x501302
or esi, 0xffffffff
jmp 0x501332
lea eax, [ebp + 0x18]
jmp 0x50103a
lea eax, [ebp + 0x24]
jmp 0x50103a
mov eax, dword [ebp + 0x14]
cmp edi, dword [eax + 8]
jge 0x501029
lea eax, [esi + eax + 0x10]
jmp 0x50103a
push 0
push edi
lea ecx, [esp + 0x2c]
push ecx
mov ecx, ebp
call fcn.004fd420
inc eax
cmp eax, 5
ja case.default.0x50114d
jmp dword [eax*4 + 0x501704]
mov dword [esp + 0x14], 2
mov byte [esp + 0x12], 1
jmp case.default.0x50114d
mov dword [esp + 0x14], 0
mov byte [esp + 0x12], 1
jmp case.default.0x50114d
push 0xa8c0
lea edx, [esp + 0x7c]
push edx
lea ecx, [esp + 0x20]
call fcn.004fe890
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x7c]
call fcn.004fcca0
test al, al
jne 0x5011b6
lea ecx, [esp + 0x78]
push ecx
lea ecx, [esp + 0x2c]
call fcn.004fcca0
test al, al
jne 0x5011b6
mov dword [esp + 0x14], 1
mov byte [esp + 0x12], 1
lea ecx, [esp + 0x78]
call fcn.004fb1e0
cmp dword [esi + 8], 3
jl 0x5010bf
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 4]
push 0
lea ecx, [esp + 0xe4]
push ecx
push 0
call fcn.004fa7c0
mov edx, dword [esp + 0xec]
add esp, 0xc
push 0
push 0
push edi
inc edx
push edx
lea eax, [esp + 0x34]
push eax
mov ecx, ebp
call fcn.004fc220
mov esi, eax
cmp esi, 0xffffffff
je 0x50148d
lea esp, [esp]
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + 4]
push 0
lea edx, [esp + 0xdc]
push edx
push 0
call fcn.004fa7c0
mov edx, dword [esp + 0x24]
mov ecx, dword [edx + 0xc]
mov eax, esi
sub eax, dword [esp + 0xe4]
add esp, 0xc
sub ecx, 2
je 0x501250
sub ecx, 1
je 0x501249
xor ecx, ecx
jmp 0x501255
mov ecx, 2
jmp 0x501255
mov ecx, 1
push ecx
lea ecx, [edx + 8]
push ecx
push eax
lea eax, [esp + 0x134]
push eax
lea ecx, [edx + 4]
call fcn.004fc990
push eax
lea ecx, [esp + 0x60]
call fcn.004fb9d0
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x58]
call fcn.004fcca0
test al, al
jne 0x501299
lea edx, [esp + 0x54]
push edx
lea ecx, [esp + 0x2c]
call fcn.004fcca0
test al, al
je 0x5012d8
mov eax, dword [esp + 0x54]
test eax, eax
je 0x5012b5
mov ecx, eax
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x5012b5
push eax
call fcn.005796d1
add esp, 4
push 0
push 0
push edi
inc esi
push esi
lea eax, [esp + 0x34]
push eax
mov ecx, ebp
call fcn.004fc220
mov esi, eax
cmp esi, 0xffffffff
jne 0x501210
jmp 0x50148d
mov eax, dword [esp + 0x54]
test eax, eax
je 0x5012f4
mov ecx, eax
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x5012f4
push eax
call fcn.005796d1
add esp, 4
cmp esi, 0xffffffff
je 0x50148d
jmp 0x501480
mov ecx, dword [eax + 8]
mov eax, ecx
inc eax
neg eax
sbb eax, eax
and eax, ecx
mov ecx, edx
inc ecx
neg ecx
sbb ecx, ecx
and ecx, edx
sub eax, ecx
mov esi, eax
jmp 0x501332
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 4]
mov edx, dword [esp + 0x28]
mov ebx, dword [ecx + 4]
mov esi, dword [edx + 4]
sub ebx, eax
sub esi, eax
push edi
mov ecx, ebp
call fcn.004fd880
cmp ebx, eax
jle 0x50134b
mov dword [esp + 0x14], 0
jmp 0x501488
cmp esi, eax
jle 0x501352
or esi, 0xffffffff
push edi
lea eax, [esp + 0x20]
push eax
mov ecx, ebp
call fcn.004feaf0
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x5013ee
mov edx, dword [esp + 0x20]
mov eax, dword [edx]
lea ecx, [esp + 0xa8]
push ecx
push eax
lea ecx, [esp + 0xb8]
push ecx
mov ecx, ebp
call fcn.004fc4e0
mov ecx, eax
call fcn.004bf880
mov edx, dword [eax]
mov eax, dword [edx + 0xc]
push eax
push str.QDateTimeParser::parse_Internal_error_4___s_
call fcn.004b7590
mov ecx, dword [esp + 0xb0]
add esp, 8
or edx, ebx
lock xadd dword [ecx], edx
jne 0x5013c1
mov eax, dword [esp + 0xa8]
push eax
call fcn.004c45d0
add esp, 4
mov ecx, dword [esp + 0xb0]
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x5013e1
mov eax, dword [esp + 0xb0]
push eax
call fcn.004bdf50
add esp, 4
mov dword [esp + 0x14], 0
jmp 0x501488
cmp esi, 0xffffffff
je 0x501402
push edi
lea ecx, [esp + 0x2c]
push ecx
mov ecx, ebp
call fcn.004feaf0
jmp 0x50140f
lea edx, [esp + 0x18]
push edx
push edi
mov ecx, ebp
call fcn.004fcd80
mov ecx, dword [esp + 0x138]
mov ecx, dword [ecx]
mov edx, dword [esp + 0x20]
sub ecx, dword [edx + 4]
js 0x50142a
mov edx, dword [esp + 0x24]
cmp ecx, dword [edx + 8]
jl 0x50142d
or ecx, 0xffffffff
push ecx
lea ecx, [esp + 0x1c]
push ecx
push edi
push eax
push ebx
lea edx, [esp + 0xcc]
push edx
lea ecx, [esp + 0x3c]
call fcn.004c2af0
push eax
mov ecx, ebp
call fcn.004fdb30
test al, al
mov eax, dword [esp + 0xb8]
sete bl
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x501474
mov edx, dword [esp + 0xb8]
push edx
call fcn.004bdf50
add esp, 4
mov dword [esp + 0x14], 0
test bl, bl
jne 0x501488
mov dword [esp + 0x14], 1
mov byte [esp + 0x12], 1
mov eax, dword [esp + 0x24]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x5014a7
mov edx, dword [esp + 0x24]
push edx
call fcn.004bdf50
add esp, 4
inc edi
cmp edi, dword [esp + 0x50]
jl 0x500f46
jmp 0x501514
cmp dword [ebp + 0x60], esi
jne 0x5014c8
mov eax, dword [esp + 0x18]
cmp dword [eax + 4], 0x46d8b7
jle 0x501514
jmp 0x501510
mov edx, dword [ebp]
mov edx, dword [edx + 8]
lea eax, [esp + 0x88]
push eax
mov ecx, ebp
call edx
lea ecx, [esp + 0x18]
push ecx
mov ecx, eax
call fcn.004fcca0
mov bl, al
mov eax, dword [esp + 0x88]
cmp eax, esi
je 0x50150c
or edx, 0xffffffff
lock xadd dword [eax], edx
jne 0x50150c
mov eax, dword [esp + 0x88]
push eax
call fcn.005796d1
add esp, 4
test bl, bl
je 0x501514
mov dword [esp + 0x14], esi
mov dword [esp + 0x5c], 0x6c30d4
mov ecx, 0x6c30d4
mov edx, 1
lock xadd dword [ecx], edx
xor edi, edi
push 0x14
mov dword [esp + 0x64], edi
mov byte [esp + 0x68], 0
call fcn.00579757
add esp, 4
cmp eax, edi
je 0x501556
mov dword [eax], edi
mov dword [eax + 4], edi
or ecx, 0xffffffff
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], edi
jmp 0x501558
xor eax, eax
mov dword [esp + 0x68], eax
cmp eax, edi
je 0x501569
mov ecx, 1
lock xadd dword [eax], ecx
mov esi, dword [esp + 0x134]
push esi
lea ecx, [esp + 0x60]
call fcn.004bb760
mov edx, dword [esp + 0x14]
mov ecx, dword [ebp + 0x5c]
mov al, byte [esp + 0x13]
mov dword [esp + 0x60], edx
push ecx
lea edx, [esp + 0x94]
push edx
lea ecx, [esp + 0x20]
mov byte [esp + 0x6c], al
call fcn.004fcb30
mov ecx, dword [eax]
cmp ecx, dword [esp + 0x68]
je 0x5015d6
cmp ecx, edi
je 0x5015b4
mov edx, 1
lock xadd dword [ecx], edx
mov ecx, dword [esp + 0x68]
mov eax, dword [eax]
mov dword [esp + 0x68], eax
cmp ecx, edi
je 0x5015d6
mov edx, ecx
or eax, 0xffffffff
lock xadd dword [edx], eax
jne 0x5015d6
push ecx
call fcn.005796d1
add esp, 4
mov eax, dword [esp + 0x90]
cmp eax, edi
je 0x5015fa
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x5015fa
mov edx, dword [esp + 0x90]
push edx
call fcn.005796d1
add esp, 4
push esi
lea ecx, [ebp + 0x10]
call fcn.004bb760
mov eax, dword [esp + 0x5c]
mov esi, dword [esp + 0x130]
mov dword [esi], eax
mov ecx, 1
lock xadd dword [eax], ecx
mov al, byte [esp + 0x64]
mov edx, dword [esp + 0x60]
mov byte [esi + 8], al
mov eax, dword [esp + 0x68]
mov dword [esi + 4], edx
mov dword [esi + 0xc], eax
cmp eax, edi
je 0x501659
mov ecx, 1
lock xadd dword [eax], ecx
mov eax, dword [esp + 0x68]
cmp eax, edi
je 0x501659
or edx, 0xffffffff
lock xadd dword [eax], edx
jne 0x501659
mov eax, dword [esp + 0x68]
push eax
call fcn.005796d1
add esp, 4
mov ecx, dword [esp + 0x5c]
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x501673
mov eax, dword [esp + 0x5c]
push eax
call fcn.004bdf50
add esp, 4
mov eax, dword [esp + 0x18]
cmp eax, edi
je 0x501691
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x501691
mov edx, dword [esp + 0x18]
push edx
call fcn.005796d1
add esp, 4
mov eax, dword [esp + 0x28]
cmp eax, edi
je 0x5016af
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x5016af
mov edx, dword [esp + 0x28]
push edx
call fcn.005796d1
add esp, 4
mov eax, dword [esp + 0x1c]
cmp eax, edi
je 0x5016cd
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x5016cd
mov edx, dword [esp + 0x1c]
push edx
call fcn.005796d1
add esp, 4
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x11c
ret 0x14